简体中文 | English
本项目旨在快速搭建一个基于 Docker 的私有仓库。起初,该项目仅用于创建一个 Docker 私有仓库,但现已扩展支持 npm
、Maven
、PyPI
等仓库,未来还将支持更多类型的仓库。用户无需担心代理问题,只需配置一个订阅,软件将自动配置到各个仓库使用,并且所有流量仅在对应容器中使用,确保安全和高效。
-
Docker
-
Maven
-
npm
-
PyPI
-
APT
-
Yum(RPM)
-
Cargo
-
Conda
Docker
$ ./ctl docker install
npm
$ ./ctl npm install
Maven
$ ./ctl maven install
PyPI
$ ./ctl pypi install
git clone https://github.com/shencangsheng/easy-registry-mirror.git
cd easy-registry-mirror
chmod +x ctl
./ctl help
./ctl docker help
./ctl docker install
- 代理 Docker registry
- 自动同步 Docker 镜像
- npm 私有仓库
- Maven 私有仓库
- PyPI 私有仓库
- npm fastestmirror
- APT
- Yum(RPM)
- Cargo
- Conda
- Go registry
- Maven fastestmirror
- PyPi fastestmirror
该方案通过代理层处理所有 Docker 请求。对于拉取镜像的请求,代理层会先将镜像上传到私有 Docker Registry,然后再转发请求并响应。此策略避免了定期同步 Docker Hub 镜像带来的带宽和存储浪费。系统还支持根据预定义列表每周自动同步镜像。执行 ./ctl docker sync help
了解更多。
graph TD;
A[Docker 请求] --> B[Docker registry 代理];
B --> C{获取镜像请求?};
C -- 是 --> D[拉取 Docker 镜像];
C -- 否 --> E[Docker registry 服务器];
D --> F[上传到 Docker registry];
F --> E;
E -- 响应 --> B;
B -- 响应 --> A;
这些开源库用于创建本项目。
已无法正常拉取 Dockerhub 镜像,下载项目所需要的基础镜像,运行 gunzip -c xxx.tar.gz | docker load
来载入镜像,./ctl proxy help
来了解如何使用代理。
- fastestmirror 功能,特别感谢 RubyMetric/chsrc 项目提供的软件支持
A short snippet describing the license (MIT)
MIT © Cangsheng Shen