Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 如何使用主机ip地址与运行在同一台机器上的容器通信_Docker_Docker Compose_Dockerfile - Fatal编程技术网

Docker 如何使用主机ip地址与运行在同一台机器上的容器通信

Docker 如何使用主机ip地址与运行在同一台机器上的容器通信,docker,docker-compose,dockerfile,Docker,Docker Compose,Dockerfile,我有两个容器,分别是container1和container2,运行在同一台机器上。我知道我可以使用链接别名选项在两个容器之间进行通信。我有一个场景,我想使用主机的IP地址在两个容器之间通信。我在container1中有一个属性文件,需要提供container2的ip地址(这里我必须提供ip地址,而不是容器的主机名)。每次我重新启动容器时,容器ip都会发生更改。那么,有没有办法将主机的ip地址映射到容器之间的链接?请查看此文档,该文档描述了如何创建并将ip地址和范围分配给docker容器。如果缺

我有两个容器,分别是container1和container2,运行在同一台机器上。我知道我可以使用链接别名选项在两个容器之间进行通信。我有一个场景,我想使用主机的IP地址在两个容器之间通信。我在container1中有一个属性文件,需要提供container2的ip地址(这里我必须提供ip地址,而不是容器的主机名)。每次我重新启动容器时,容器ip都会发生更改。那么,有没有办法将主机的ip地址映射到容器之间的链接?

请查看此文档,该文档描述了如何创建并将ip地址和范围分配给docker容器。如果缺少时间,请使用以下命令:

docker network create --subnet=192.168.0.0/16 docnet0

docker run --net docnet0 --ip 192.168.0.10 -it "your_docker_image" bash

请检查此文档,该文档描述了如何创建和分配docker容器的IP地址和范围。如果缺少时间,请使用以下命令:

docker network create --subnet=192.168.0.0/16 docnet0

docker run --net docnet0 --ip 192.168.0.10 -it "your_docker_image" bash

谢谢@FaigB。我有点怀疑。两个容器都需要使用ip地址相互通信。docker run不允许我使用相同的ip地址。我是否需要为docker run命令提供两个不同的ip地址?是的,使用提供的ip,您将能够启用容器之间的通信。非常感谢。因此,在中传递ip地址--ip不需要是主机的ip?为了防止这种情况,只需使用不同的子网,该子网的ip地址范围不同。谢谢@FaigB。我有点怀疑。两个容器都需要使用ip地址相互通信。docker run不允许我使用相同的ip地址。我是否需要为docker run命令提供两个不同的ip地址?是的,使用提供的ip,您将能够启用容器之间的通信。非常感谢。所以在中传递ip地址--ip不需要是主机的ip?为了防止这种情况,只需使用不同的子网,该子网的ip地址范围不同。