【发布时间】:2016-09-06 16:41:09
【问题描述】:
我正在尝试在 jwilder/nginx-proxy 后面运行 sonatype/nexus3,并将其用作 maven 和 docker 私有仓库。 我想让 nginx 代理 nexus 子域到 nexus 容器的端口 8081,并将 docker 子域代理到同一容器的端口 8082。这可能吗?
首先,我使用 Let's Encrypt 证书将 maven 部分作为 nexus.mydomain.com 在 TSL 上正常工作:
docker run --restart=always --name nginx -d -p 80:80 -p 443:443 -v /root/certs/:/etc/nginx/certs -v /var/run/docker.sock:/tmp/docker.sock:ro jwilder/nginx-proxy
docker run --restart=always -d -p 8081:8081 --name nexus -e VIRTUAL_HOST=nexus.mydomain.com -v /root/nexus-data:/nexus-data sonatype/nexus3
然后我意识到要让 docker 私有存储库运行,我需要使用额外的端口。所以我在端口 8082 上创建了 docker repo,并使用保存的配置重新创建了容器,暴露了新端口和一个额外的子域:
docker run --restart=always -d -p 8081:8081 -p 8082:8082 --name nexus -e VIRTUAL_HOST=nexus.mydomain.com,docker.mydomain.com -v /root/nexus-data:/nexus-data sonatype/nexus3
我尝试覆盖 nginx 配置,在 /etc/nginx/vhost.d 上安装卷,但没有成功。有什么线索吗?
【问题讨论】:
-
我很困惑为什么你将端口发布到你的 nexus 容器并且试图通过 nginx-proxy 连接到它。
-
有这方面的消息吗?
标签: nginx docker reverse-proxy jwilder-nginx-proxy