如何使用Dockerfile将主容器链接到数据库容器?

时间:2017-07-08 21:15:56

标签: docker containers

Docker有一种非常方便的方法,可以使用如下命令将主容器链接到数据库容器:

docker run --link db:db user/main

这已经很方便了。但是,我相信它与以下命令相比仍然很笨拙:

docker run user/ultra

其中ultra是已将主容器链接到数据库容器的容器。

通过写一篇好文章Dockerfile,我是否有可能实现这一目标。

我想我可以用

开始Dockerfile
FROM user/main 

但如何让第二个容器参与其中,然后将它们与Dockerfile

相关联

感谢。

1 个答案:

答案 0 :(得分:0)

FROM user/main 

这将基于build time创建一个图像(user/main),这与在运行时将两个容器链接在一起完全不同。

另外,--link现已过时:请参阅" Legacy container links"

  

警告:--link标志是Docker不推荐使用的旧功能。它最终可能被删除   除非您绝对需要继续使用它,否则我们建议您使用用户定义的网络来促进两个容器之间的通信,而不是使用--link

docker-compose.yml文件中使用 links directive

  

链接服务的容器可以在与别名相同的主机名上访问,如果没有指定别名,则可以访问服务名称

您可以使用depends_on directive确保按正确顺序启动容器。

然后,一个简单的docker-compose up将启动容器并将它们链接到同一网络上。