如何使用Docker-Compose

时间:2018-05-22 17:03:41

标签: docker networking docker-compose

我尝试使用两个不同的docker-compose.yml文件设置应用程序环境。第一个在默认网络elastic-apm-stack_default中创建服务。为了获得两个docker-compose文件的服务,我在第二个docker-compose文件中使用了external命令。这两个文件都是这样的:

# elastic-apm-stack/docker-compose.yml
services: 
  apm-server:
    image: docker.elastic.co/apm/apm-server:6.2.4
    build: ./apm_server
    ports:
      - 8200:8200
    depends_on:
      - elasticsearch
      - kibana
  ...

# sockshop/docker-compose.yml
services:
  front-end:
    ...
    ...
    networks:
      - elastic-apm-stack_default
networks:
  elastic-apm-stack_default:
    external: true

现在,第二个文件中的front-end服务需要将数据发送到第一个文件中的apm-server服务。因此,我在http://apm-server:8200服务的源代码中使用了URL front-end,但我总是得到一个connectionRefused错误。如果我在一个docker-compose文件中定义所有服务它可以工作,但我想分离docker-compose文件。 谁能帮助我? :)

1 个答案:

答案 0 :(得分:1)

Docker容器在网络172.17.0.1中运行
因此,您可以使用网址

http://172.17.0.1:8200

访问您的 apm服务器容器。