有没有使用Docker容器IPs变量的方法?

时间:2019-04-26 15:41:05

标签: mongodb symfony docker symfony-3.4

我正在对一个现有的Symfony项目进行泊坞,该项目使用MongoDB来存储数据。因此,我设置了一个Apache-Container,它对于Symfony部分和MongoDB-Container都可以很好地运行数据库。但是现在当我尝试连接两者时,我需要像这样在symfony的parameters.yml中填写MongoDB-Container-IP:

mongodb_server: 'mongodb://172.21.0.2:27017'

使用我在docker inspect ${mongodb_container}中找到的IP地址。

所以我的问题是:是否有更好的方法将MongoDB-container-IP发送到parameters.yml,以便在IP更改时不会中断?

1 个答案:

答案 0 :(得分:1)

您实际上不需要IP地址。

使用以下命令运行您的应用程序

docker run --name some-app --link your-mongo-container-name:mongo -d application-that-uses-mongo

通过--link可以按主机名访问mongo。喜欢 mongodb_server: 'mongodb://mongo:27017'

-link现在已被弃用,但是现在您可以使用。 将来将这两个容器放在同一网络中。

然后使用其主机名呼叫他们。