services:
registry-mirror:
image: registry:2
container_name: registry-mirror
restart: always
ports:
- "127.0.0.1:5000:5000"
volumes:
- ./data/registry:/var/lib/registry
environment:
# 配置为 Docker Hub 的加速器(Mirror)
REGISTRY_PROXY_REMOTEURL: https://registry-1.docker.io
server {
listen 443 ssl;
server_name docker.go.com;
# 证书路径
ssl_certificate /etc/nginx/selfsigned.crt;
ssl_certificate_key /etc/nginx/selfsigned.key;
# 强烈建议:限制上传文件大小,否则无法推送镜像
client_max_body_size 0;
# 这里的 chunked_transfer_encoding 必须开启
chunked_transfer_encoding on;
location / {
# 这里的 registry-srv 是 Docker Compose 中的服务名或容器 IP
proxy_pass http://127.0.0.1:5000;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 900;
}
}
评论区