我有一个在Centos主机上运行的docker容器,并且有一个主机端口:容器端口映射。 docker容器有一个运行的Web应用程序。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a2f8ce62bb69 image1 "/bin/bash" 16 hours ago Up 16 hours 22/tcp, 0.0.0.0:7001->7001/tcp nostalgic_elion
我可以通过主机IP地址和映射的主机端口访问http。但是,如果我用容器IP替换主机IP,则会收到错误消息“无法访问站点”ERR_CONNECTION_TIMED_OUT。
是否可以通过http使用容器IP和公开端口进行访问?不幸的是,我没有太多的网络背景。
答案 0 :(得分:0)
默认情况下,Docker容器可以与外界建立连接,但外部世界无法连接到容器。 (https://docs.docker.com/v1.7/articles/networking/)
然而,文档说,有可能让外界与具有一些额外运行选项的容器交谈。文档说明了如何使用带有选项的运行-P或---- publish-all = true | false。请参阅同一docker networking页面中的选项。
答案 1 :(得分:0)
如果你唯一的需要是为团队分享不同的IP地址。使用docker containers ip address - localhost
更新主机文件My /etc/hosts file:
container-ip localhost
container-ip localhost
container-ip localhost