在docker容器之间共享IP地址

时间:2018-03-19 17:44:40

标签: docker

我使用下面的命令运行单节点zookeeper docker image docker run -it -p 2181:2181 --name zookeeper zookeeper。  为了运行kafka docker镜像,我需要将zookeper docker镜像的IP地址作为ENV变量共享,并更新kafka server.properties文件。

使用docker inspect,我可以获取zookeeper图像的IP地址,并在kafka的docker run期间传递它。

但是有没有办法在docker容器之间自动检测和共享IP地址。

我可以看一些使用--link的例子,但在最新的docker文档中,它似乎已被弃用。

感谢任何建议/帮助

由于

1 个答案:

答案 0 :(得分:2)

urls.py是您案例的完美解决方案。

  

默认情况下,Compose会为您的应用设置单个网络。每   服务容器加入默认网络,两者都是   该网络上的其他容器可以访问,并且可以被发现   它们的主机名与容器名相同。

version: '3' services: zookeeper: image: <zookeeper_image_name> restart: always ports: - 2181:2181 kafka: image: <kafka_image_name> restart: always 类似于以下情况:

zookeeper

Kafka容器应该server.properties作为{{1}}文件中的zookeeper主机名。