参考资料

  1. Memcached 是一个高性能、分布式的内存缓存系统
  2. Cloudreve基于 Web 的云存储管理平台
  3. Jetty 是一个轻量级的开源 Java Web 服务器和 Servlet 容器,由 Eclipse 基金会维护
  4. MySQL 是一个开源的关系型数据库管理系统
  5. Erlang 是一种通用的并发编程语言和运行时环境
  6. Portainer 是一个轻量级的 Docker 和 Kubernetes 管理界面
  7. Apache Tomcat 是一个开源的 Java Servlet 容器和 Web 服务器
  8. MariaDB 是一个开源的关系型数据库管理系统

Composer 是 PHP 的依赖管理工具

Composer 简介

Composer 是 PHP 的依赖管理工具,用于管理项目中的库依赖关系,支持自动加载、版本控制和依赖解析。

特点

  1. 依赖管理:自动解决库之间的依赖关系。

  2. 自动加载:生成优化的自动加载文件。

  3. 版本控制:支持语义化版本控制(SemVer)。

  4. 插件系统:可通过插件扩展功能。

  5. 跨平台:支持 Windows、Linux 和 macOS。

最新更新内容及时间

  • 最新版本:2.6.6(截至 2023 年 10 月)

  • 更新内容

    • 修复了若干 Bug。

    • 改进了性能。

    • 增强了对 PHP 8.2 的支持。

镜像下载地址

  • 官方下载:https://getcomposer.org/download/

  • 中国镜像:https://mirrors.aliyun.com/composer/

官网地址

https://getcomposer.org/

文档地址

https://getcomposer.org/doc/

Docker 安装示例

docker run --rm -v $(pwd):/app composer install

.yaml 设置教程(实际为 composer.json 配置)

  1. 基本结构:

{
    "name": "vendor/project",
    "description": "Project description",
    "type": "project",
    "require": {
        "php": "^8.0",
        "vendor/package": "1.0.*"
    },
    "autoload": {
        "psr-4": {
            "Vendor\\Namespace\\": "src/"
        }
    }
}
  1. 常用命令:

  • composer install:安装依赖。

  • composer update:更新依赖。

  • composer require vendor/package:添加新依赖。

常用错误问题

  1. 内存不足

    • 错误信息:Allowed memory size exhausted

    • 解决:运行 COMPOSER_MEMORY_LIMIT=-1 composer install

  2. 版本冲突

    • 错误信息:Your requirements could not be resolved to an installable set of packages

    • 解决:检查 composer.json 中的版本约束或使用 composer why-not vendor/package

  3. 证书问题

    • 错误信息:SSL certificate problem

    • 解决:运行 composer config -g -- disable-tls true(不推荐)或配置正确的证书。

  4. 镜像源问题

    • 错误信息:Could not fetch packages

    • 解决:切换镜像源:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

  5. 权限问题

    • 错误信息:Could not create directory

    • 解决:确保目录可写或使用 sudo(不推荐)。