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

时间:2016-10-30 17:51:24

标签: docker docker-compose external-links errbit

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

我正在撰写之外创建errorHandling服务。

docker run -d --name errorHandler

然后我运行compose(汇总):

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

我在我的应用程序中使用主机名别名(' errorHandler')但似乎无法将它们连接起来。如何检查甚至在撰写网络中发现的服务?

1 个答案:

答案 0 :(得分:4)

使用共享的docker网络而不是链接。使用docker network create errorNetdocker network connect errorNet errorHandler之类的内容将“errorHandler”容器放在Docker中的网络上。然后在您的撰写文件中为“my-service”定义该网络:

version: '2'
networks:
  errorNet:
    external: true

services:
  my-service:
    build: ../my-service
    networks:
     - errorNet

这使用docker的内部DNS将容器连接在一起。