我尝试使用两个不同的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文件。
谁能帮助我? :)
答案 0 :(得分:1)
Docker容器在网络172.17.0.1
中运行
因此,您可以使用网址
http://172.17.0.1:8200
访问您的 apm服务器容器。