阿里云 Composer 镜像开源啦!3 步快速搭建自己的 Composer 的镜像!

为了服务 PHP 开发者,2019年7月,阿里云提供了 Composer 镜像服务: https://developer.aliyun.com/composer,其秒级同步、快速访问的能力得到了广大 PHP 开发者的一致好评。
 
目前,阿里云 Composer 日均使用 200W,为了不断优化和提升 Composer 镜像的能力,更好地服务 PHP 开发者,阿里云决定开源镜像同步系统!欢迎广大网友体验和参与开发,提交PR。一起让 PHP 社区更加繁荣!
 
话不多说,接下来教大家如何搭建自己的 Composer 镜像。
 

第 1 步

  1. 首先,你需要在阿里云上开通一个 OSS Bucket,用于存储镜像文件。建议选择和服务器最近的Endpoint。点击此处进入OSS控制台:https://oss.console.aliyun.com/overview
  2. 其次,你需要一个存储空间不低于 4G 的 Redis,用于存储任务和队列。
  3. 最后,确保安装了 Golang 环境,版本大于 1.11。

第 2 步

定制你的配置文件。下载阿里云 Composer 镜像代码,https://github.com/aliyun/packagist-mirror。在项目的根目录新建文件 packagist.yml,并写入如下配置:

REDIS_ADDR: "地址:端口"
REDIS_PASSWORD: "密码"
REDIS_DB: 0
OSS_ACCESS_KEY_ID: "OSS
AccessKeyID"
OSS_ACCESS_KEY_SECRET: "OSS AccessKeySecret"
OSS_ENDPOINT: "OSS Endpoint,如:oss-cn-hangzhou.aliyuncs.com"
OSS_BUCKET: "Bucket 名"
GITHUB_TOKEN: "Github Token,如:6a023b828b17*****0ab5tgj6ddb3f0ccb3d30e0"
DATA_URL: "同步源地址,如:[https://mirrors.aliyun.com/composer/"](https://mirrors.aliyun.com/composer/%22)
MIRROR_URL: "镜像网址,如:[https://developer.aliyun.com/composer/"](https://developer.aliyun.com/composer/%22)
DIST_URL: "ZIP包下载地址,如:[https://mirrors.aliyun.com/composer/dists/"](https://mirrors.aliyun.com/composer/dists/%22)
PROVIDER_URL: "Provider 前缀” 

主要配置详解

OSS_ACCESS_KEY_ID

可以向 Bucket 写入文件的 Access Key,为了云上资源的安全,强烈建议新建一个专用的子账号,账户的权限配置最小化。点击此处进入阿里云RAM控制台:https://ram.console.aliyun.com/users

GITHUB_TOKEN

大部分依赖包的zip文件被托管在 Github 上,系统需要从 Github 上读取到数据再上传到 OSS 上,如果没有 token 请求 Github 会被限制。点击此处生成新 token 地址:https://github.com/settings/tokens/new

DATA_URL

从哪里读取 Meta 数据,亚太地区建议使用阿里云源:https://mirrors.aliyun.com/composer/。亚太地区以外使用:https://repo.packagist.org/

MIRROR_URL

你的镜像地址,即你对外提供服务的地址,如果有配置 CDN ,建议是 CDN 的地址,系统会自动请求资源预热。

PROVIDER_URL

你的 providers 文件路径前缀,正常情况下根目录,也存在代理到子目录的配置。

DIST_URL

你的代码包下载地址前缀,会被写入根文件,Composer 客户端会根据这个地址下载 Dist 包。

第 3 步

编译并运行!

go build
./packagist-mirror 

注意:

  1. 推荐使用进程管理工具 supervisor 监听进程,配置文件位于 supervisor/supervisord.conf
  2. 如果对公网提供服务,推荐 OSS Bucket 启用 CDN 缓存功能,可以减少流量,控制成本。

钉钉群

钉钉群号:23178217

阿里云 Composer 镜像开源啦!3 步快速搭建自己的 Composer 的镜像!

阿里巴巴开源镜像站 提供全面,高效和稳定的系统镜像、应用软件下载、域名解析和时间同步服务。”

上一篇:Unity 之数据集合解析


下一篇:开源中国 Maven 镜像库关闭访问