https://github.com/trueai-org/docker-proxy
自建Docker镜像加速服务。
https://github.com/trueai-org/docker-proxy
docker docker-container docker-hub docker-image docker-mirror
Last synced: 12 days ago
JSON representation
自建Docker镜像加速服务。
- Host: GitHub
- URL: https://github.com/trueai-org/docker-proxy
- Owner: trueai-org
- License: apache-2.0
- Created: 2025-04-25T02:24:21.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2026-03-23T16:23:28.000Z (3 months ago)
- Last Synced: 2026-03-24T12:10:24.175Z (3 months ago)
- Topics: docker, docker-container, docker-hub, docker-image, docker-mirror
- Language: C#
- Homepage: https://docker.trueai.org
- Size: 72.3 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Docker Proxy
自建Docker镜像加速服务。
镜像加速地址:
镜像拉取测试:`docker pull docker.trueai.org/library/redis`
镜像加速文档:
## 功能
一键部署Docker镜像代理服务的功能,支持基于官方Docker Registry的镜像代理。
## 部署
> Docker 版本
```bash
# 一键升安装脚本
# 1.首次下载
wget -O docker-upgrade.sh https://raw.githubusercontent.com/trueai-org/docker-proxy/main/scripts/docker-upgrade.sh && bash docker-upgrade.sh
# 2.更新升级(以后升级只需要执行此脚本即可)
sh docker-upgrade.sh
```
```bash
# 1. 第一步启动容器
docker run --name dp -d --restart=always -p 8080:8080 registry.cn-guangzhou.aliyuncs.com/trueai-org/docker-proxy
# 2. 使用 Caddy 反向代理或使用 Nginx 配置 https
# 2.1 Caddy 示例
sudo nano /etc/caddy/Caddyfile
doman.com {
reverse_proxy localhost:8080 {
header_up Host {host}
header_up X-Real-IP {remote}
header_up X-Forwarded-For {remote}
header_up X-Forwarded-Proto {scheme}
}
log {
output file /var/log/caddy/doman.com.log
}
}
# 3. 配置 Docker Daemon 或直接使用
# 3.1 直接使用
docker pull doman.com/library/redis
# 3.2 配置 Docker Daemon
sudo mkdir -p /etc/docker
sudo vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://<代理加速地址>"]
}
sudo systemctl daemon-reload
sudo systemctl restart docker
```
> Windows 版本
```bash
a. 通过 https://github.com/trueai-org/docker-proxy/releases 下载 windows 最新免安装版,例如:midjourney-proxy-win-x64.zip
b. 解压并执行 DockerProxy.exe
c. 打开网站 http://localhost:8080
```
> Linux 版本
```bash
a. 通过 https://github.com/trueai-org/docker-proxy/releases 下载 linux 最新免安装版,例如:midjourney-proxy-linux-x64.zip
b. 解压到当前目录: tar -xzf docker-proxy-linux-x64-.tar.gz
c. 执行: run_app.sh
c. 启动方式1: sh run_app.sh
d. 启动方式2: chmod +x run_app.sh && ./run_app.sh
```
> macOS 版本
```bash
a. 通过 https://github.com/trueai-org/docker-proxy/releases 下载 macOS 最新免安装版,例如:midjourney-proxy-osx-x64.zip
b. 解压到当前目录: tar -xzf docker-proxy-osx-x64-.tar.gz
c. 执行: run_app_osx.sh
c. 启动方式1: sh run_app_osx.sh
d. 启动方式2: chmod +x run_app_osx.sh && ./run_app_osx.sh
```
> Registry 配置项 appsettings.json
- `CacheDir`:缓存目录,默认值为 `./cache`。
- `CacheTTL`:文件缓存过期时间,单位为秒,默认值为 `604800`(7天)。
- `Timeout`:请求超时时间,单位为毫秒,默认值为 `30000`(30秒)。
- `MemoryLimit`:内存限制,单位为MB,默认值为 `128`(128MB)。
- `BufferSize`:缓冲区大小,单位为字节,默认值为 `8192`(8KB)。
- `Concurrent`:并发下载数,默认值为 `4`。
- `Username`:Docker Hub 用户名,默认值为空,采用登录方式可提升拉取速度。
- `Password`:Docker Hub 密码,默认值为空,采用登录方式可提升拉取速度。
```json
{
"CacheDir": "./cache",
"CacheTTL": 604800,
"Timeout": 30000,
"MemoryLimit": 128,
"BufferSize": 8192,
"Concurrent": 4,
"Username": "",
"Password": ""
}
```
## 准备
⚠️ 重要:选择一台国外服务器,并且未被墙。对于域名,无需进行国内备案。你也可以通过一些平台申请免费域名。在一键部署过程中,如果选择安装Caddy,它将自动配置HTTPS。若选择部署Nginx服务,则需要自行申请一个免费的SSL证书,或者通过其他方式来实现SSL加密。
> 使用 IP 地址 + 端口作为 Docker 加速服务
- 适合内网环境,无需域名解析
- 配置简单直接
- 便于测试和开发环境使用
在 Docker 的 daemon.json 文件中,您可以像这样配置:
```json
{
"insecure-registries": ["192.168.1.100:5000", "10.0.0.10:8080"],
"registry-mirrors": ["http://192.168.1.100:8080"]
}
```