docker pull
通过 docker-group
既可以拉取 docker-hosted
镜像又可以拉取 docker-proxy
的镜像。
由于 nexus3
的限制,如果只代理至 docker-group
的话,无法推送镜像,所以需要将推送代理至 docker-hosted
。
默认的 GET
与 HEAD
请求代理至 docker-group
,其余的 PUT
POST
请求代理至 docker-group
。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| http {
map $request_method $repo_name { default hosted; GET group; HEAD group; }
server {
location /v2/ { client_max_body_size 8000M; rewrite /v2/(.*) /repository/docker-$repo_name/v2/$1 break; proxy_pass http://${IP}:8081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-PORT $remote_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
}
|