[英]docker push to private registry: how not to specify a port
根據此docker指令部署私有注冊表時,我必須在CLI中指定端口以推送圖像,如下所示:
對於http ( 80
),命令為: docker push host.com:80/alpine
。 對於https ( 443
),命令必須是: docker push host.com:443/alpine
。 如果我將端口映射到5000,則命令為: docker push host.com:5000/alpine
。
想要的效果是這樣的簡單推送: docker push host.com/alpine
當我啟動注冊表容器時,如何構建docker run
full命令來實現此目的?
默認端口是443,據我所知,它無法更改。 但您可以在另一台主機上設置NGINX(或HAProxy)並將其配置為代理您對注冊表的所有請求,如下所示:
server {
listen *:443 ssl;
server_name registry.company.com;
proxy_set_header Host upload.expert;
location / {
proxy_pass http://private.registry.company.com:5000;
}
}
然后只是docker push registry.company.com/alpine
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.