我目前正在使用docker-compose来设置一系列微服务,我想链接到一个常见的错误记录服务(在compose之外创建)。
我正在撰写之外创建errorHandling服务。
docker run -d --name errorHandler
然后我运行compose(汇总):
version: '2'
services:
my-service:
build: ../my-service
external_links:
- errorHandler
我在我的应用程序中使用主机名别名(' errorHandler')但似乎无法将它们连接起来。如何检查甚至在撰写网络中发现的服务?
答案 0 :(得分:4)
使用共享的docker网络而不是链接。使用docker network create errorNet
和docker network connect errorNet errorHandler
之类的内容将“errorHandler”容器放在Docker中的网络上。然后在您的撰写文件中为“my-service”定义该网络:
version: '2'
networks:
errorNet:
external: true
services:
my-service:
build: ../my-service
networks:
- errorNet
这使用docker的内部DNS将容器连接在一起。