前提需要代理的服务器能访问Docker的镜像地址例如使用香港或者国外的服务器搭建反向代理Docker镜像源地址# Docker Hub 认证接口location/token{proxy_pass https://auth.docker.io/token$is_args$args;proxy_ssl_server_name on;proxy_set_header Host auth.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 https;proxy_set_header Authorization$http_authorization;proxy_pass_header Authorization;}location ^~ /v2/{proxy_pass https://registry-1.docker.io;proxy_ssl_server_name on;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 https;proxy_set_header Authorization$http_authorization;proxy_pass_header Authorization;proxy_http_version1.1;add_header X-Debugv2 matchedalways;proxy_hide_header WWW-Authenticate;add_header WWW-AuthenticateBearer realmhttps://docker.xxx.top/token,serviceregistry.docker.ioalways;}主配置把docker.xxx.top修改为自己的域名server{listen10080;server_name docker.xxx.top;resolver8.8.8.81.1.1.1valid300s;index index.php index.html index.htm default.php default.htm default.html;access_log /www/sites/docker.xxx.top/log/access.log main;error_log /www/sites/docker.xxx.top/log/error.log;resolver_timeout 5s;location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md){return404;}location ^~ /.well-known/acme-challenge{allow all;root /usr/share/nginx/html;}if($uri~^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$){return403;}root /www/sites/docker.xxx.top/index;include /www/sites/docker.xxx.top/proxy/*.conf;}