我有一个带有IP 172.10.100.17的主机上运行一个Docker。我使用默认参数安装了UCP,还部署了nginx容器,其中主机端口443映射到容器上的443。
docker run -it --rm --name ucp -v /var/run/docker.sock:/var/run/docker.sock docker/ucp install --host-address 172.10.100.17 --interactive
docker run -it -d --name ngx -p 80:80 -p 443:443 nginxhttps://172.10.100.17服务的两者共存?(注意:https在nginx上启用)
发布于 2020-05-09 16:23:55
键在-p参数中,它处理端口映射。列出的第一个端口位于主机上,第二个端口位于容器中。所以-p 80:80意味着将主机上的端口80映射到容器中的端口80。
让我们把这个扩展到Nginx。我将假设您希望在UCP和Nginx中同时使用HTTPS。只有一个应用程序可以侦听主机上的每个端口。因此,如果两个容器都公开端口443,则可以在主机上有一个使用端口443 (-p 443:443),另一个可以使用不同的端口(-p 4443:443)。然后,您将分别在主机上的端口443和4443访问它们,即使两个容器都公开了端口443 - Docker正在进行端口转发。
您可能在询问如何使用Nginx作为反向代理在单个端口上运行两个容器。这也是一种可能性,尽管更为复杂。
https://stackoverflow.com/questions/61692821
复制相似问题