Nginx 配置 docker 镜像代理服务,解决docker pull问题
话不多说,下面是NGINX的配置:
server {
listen 6333 ssl http2;
listen [::]:6333 ssl http2;
server_name xxxx;
index index.php index.html index.htm default.php default.htm default.html;
<p>ssl_certificate fullchain.pem;<br>
ssl_certificate_key privkey.pem;<br>
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;<br>
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;<br>
ssl_prefer_server_ciphers on;<br>
ssl_session_cache shared:SSL:10m;<br>
ssl_session_timeout 10m;<br>
add_header Strict-Transport-Security "max-age=31536000";<br>
error_page 497 https://$host$request_uri;</p>
<p>location / {<br>
proxy_pass <a href="https://registry-1.docker.io" target="_blank">https://registry-1.docker.io</a>; # Docker Hub 的官方镜像仓库</p>
<p>proxy_set_header Host registry-1.docker.io;<br>
proxy_set_header X-Real-IP $remote_addr;<br>
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br>
proxy_set_header X-Forwarded-Proto $scheme;</p>
<h1 id="关闭缓存">关闭缓存</h1>
<p>proxy_buffering off;</p>
<h1 id="转发认证相关的头部">转发认证相关的头部</h1>
<p>proxy_set_header Authorization $http_authorization;<br>
proxy_pass_header Authorization;</p>
<h1 id="对-upstream-状态码检查实现-error_page-错误重定向">对 upstream 状态码检查,实现 error_page 错误重定向</h1>
<p>proxy_intercept_errors on;<br>
recursive_error_pages on;</p>
<h1 id="错误处理和重定向逻辑">错误处理和重定向逻辑</h1>
<p>error_page 301 302 307 = @handle_redirect;<br>
error_page 429 = @handle_too_many_requests;<br>
}</p>
<p>location @handle_redirect {<br>
resolver 1.1.1.1;<br>
set $saved_redirect_location '$upstream_http_location';<br>
proxy_pass $saved_redirect_location;<br>
}</p>
<p>location @handle_too_many_requests {<br>
return 429 "Too many requests, please try again later.";<br>
}</p>
<p>access_log /www/wwwlogs/xianxian0827-6333.cloud.log;<br>
error_log /www/wwwlogs/xianxian0827-6333.cloud.error.log;<br>
} <br/> <br/> "registry-mirrors": [<br>
"<a href="https://ip:6333" target="_blank">https://ip:6333</a>"<br>
]<br>

浙公网安备 33010602011771号