如何使用external_links将docker-compose连接到公共服务?

我目前正在使用docker-compose来设置一系列我想链接到一个常见的错误日志logging服务(在compose之外创build)的微服务。

我正在创build组合之外的errorHandling服务。

docker run -d --name errorHandler 

然后我运行撰写(总结):

 version: '2' services: my-service: build: ../my-service external_links: - errorHandler 

我在我的应用程序中使用主机名别名('errorHandler'),但似乎无法让他们连接。 如何查看组合networking中是否发现该服务?

使用共享的dockernetworking,而不是链接。 将“errorHandler”容器放在Docker的networking中,使用类似docker network create errorNetdocker network connect errorNet errorHandler 。 然后在你的撰写文件中为“my-service”定义networking:

 version: '2' networks: errorNet: external: true services: my-service: build: ../my-service networks: - errorNet 

这使用docker的内部DNS来连接容器。