配置私有仓库需在composer.json中添加repositories,支持VCS(如Git)和HTTP(如Satis)类型,1. VCS类型使用"vcs"并指定Git地址,依赖SSH或Token认证;2. HTTP类型使用"composer"指向Satis等服务,通过HTTPS提供包信息;3. 认证信息应通过composer config命令写入~/.composer/auth.json,避免明文泄露;4. 确保私有包含正确composer.json、版本标签及网络可达,最终运行composer install即可安装私有包。

要在 Composer 中配置私有仓库,只需在项目的 composer.json 文件中声明仓库信息即可。Composer 支持多种类型的私有仓库,最常见的是 VCS(版本控制系统) 和 HTTP/HTTPS 服务(如 Satis 或 Private Packagist)。
1. 配置 VCS 类型的私有仓库
如果你的私有包托管在 Git 服务器上(如 GitHub、GitLab、Bitbucket 等),可以使用 vcs 类型:
{
"repositories": [
{
"type": "vcs",
"url": "https://gitlab.example.com/your-company/your-private-package.git"
}
],
"require": {
"your-vendor/your-private-package": "^1.0"
}
}
Composer 会通过 Git 克隆该仓库。如果仓库是私有的,需要确保运行 composer 命令的机器已配置好认证方式,例如:
- 使用 SSH 密钥(推荐)
- 在 URL 中包含用户名和密码(不推荐明文)
- 使用 OAuth Token 或 Personal Access Token
2. 配置 HTTP 类型的私有仓库(如 Satis)
如果你搭建了基于 Satis 的静态包仓库,使用 composer 类型:
{
"repositories": [
{
"type": "composer",
"url": "https://packages.yourcompany.com"
}
],
"require": {
"your-vendor/private-package": "^2.0"
}
}
这种模式下,Composer 会从指定 URL 下载 packages.json 并安装对应包。通常需要 HTTPS + 认证保护。
3. 设置认证信息(避免明文写在 composer.json)
敏感凭证不应写入 composer.json。应使用 Composer 的全局配置:
- 对于 HTTP 基本身份验证:
- 对于 OAuth Token(如 GitHub/GitLab):
这些命令会在用户目录下的 auth.json 文件中保存凭证(路径通常是 ~/.composer/auth.json),避免泄露。
4. 注意事项
- 私有仓库必须包含合法的 composer.json 文件
- 确保私有包的版本标签(如 v1.0.0)已正确打在 Git 上
- 若使用企业 Git 服务,检查域名是否被正确识别(如自建 GitLab 需完整域名)
- 可通过 composer install -vvv 查看详细请求日志,排查连接问题










