跳转到正文
粥盐籽
返回

自建 Docker 镜像加速方案

前言

注意:本文内容具有时效性,各镜像加速方案的可用性可能随时变化,请以各项目最新状态为准。

因不可抗力,国内访问 Docker 极其艰难,只能自立更生。 Docker 一键安装脚本:bash <(curl -sSL https://linuxmirrors.cn/docker.sh)

方案一:直接使用代理

如何优雅的给 Docker 配置网络代理

方案二:使用 Cloudflare Worker 反代

cloudflare-docker-proxy 基于 Cloudflare Workers 和 cloudflare-docker-proxy 搭建镜像加速服务

方案三:镜像转存方案

tech-shrimp/docker_image_pusher togettoyou/hub-mirror

方案四:自建 Docker 镜像

dqzboy/Docker-Proxy bboysoulcn/registry-mirror

Nginx 反代实现对应访问

location / {
	proxy_pass https://registry-1.docker.io;  
	proxy_set_header Host registry-1.docker.io;
	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_buffering off;
	proxy_set_header Authorization $http_authorization;
	proxy_pass_header  Authorization;
	proxy_intercept_errors on;
	recursive_error_pages on;
	error_page 301 302 307 = @handle_redirect;
}
location @handle_redirect {
	resolver 1.1.1.1;
	set $saved_redirect_location '$upstream_http_location';
	proxy_pass $saved_redirect_location;
}

主观上的对比

方案操作难度下载速度备注
直接代理简单较快缺点是每个机器要单独配置,另外部分机器无法配置代理
CF Worker简单较慢部分地区无法正常连接 CF,白嫖要什么自行车
转存镜像一般一般自建方案略复杂,每次需要转存一次也略麻烦
自建镜像一般未知速度取决于机器带宽/线路,机器也就意味着要钱

分享此文到:

上一篇
自建服务推荐清单
下一篇
Docker 部署 Immich 家庭相册