1.域名解析
用作反向代理的域名要提前解析,如果使用外國的DNS域名提供商的話,最好提前一天解析好。
2.配置NPM
2.1.Details選項卡
2.2.SSL選項卡
2.3.Advanced選項卡
location / {
# Docker hub 的官方映象倉庫
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;
# 對 upstream 狀態碼檢查,實現 error_page 錯誤重定向
proxy_intercept_errors on;
recursive_error_pages on;
# 根據狀態碼執行對應操作,以下為381、302、387狀態碼都會觸發
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;
}
3.測試
# 找一臺機器進行測試
docker pull docker.youdomainname.top/library/busybox:latest
參考:利用nginx反向代理加速docker映象拉取
Nginx Proxy Manager使用教程