如何解决在Dockerfile中链接Docker容器
我有一个Jaeger在本地计算机的docker容器中运行。
我创建了一个示例应用程序,该应用程序将跟踪数据发送到Jaeger。从IDE运行时,数据可以完美发送。
我已经容器化了我的应用程序,现在我将其部署为容器,但是仅当我使用--link jaeger
链接两个容器(预期)时,通信才有效。
我的问题是:
是否可以在Dockerfile中添加--link
参数,因此在运行docker run
命令时无需指定它?
解决方法
如果要保留两个单独的映像,则不可能在Dockerfile中执行此操作。您应该如何预先知道要链接的容器的名称/ ID?
以下是两种解决方案:
- 使用Docker compose。这样,Docker将自动将所有容器链接在一起
- 创建一个
bridge
网络并添加您要链接到其中的所有容器。这样,您便可以进行名称解析,并且可以使用每个容器的名称联系每个容器
我建议您使用netwoking,方法是:
docker network create [OPTIONS] NETWORK
,然后使用--network =“ network”运行 与network一起使用docker-compose并相互链接 例如:
version: '3'
services:
jaeger:
network:
-network1
other_container:
network:
-network1
networks:
network1:
external: true
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。