我正在使用Docker Compose文件来启用一个流畅的版本,如下所示:
version: '3'
services:
fluentd:
image: "fluent/fluentd:latest"
ports:
- "9880:9880"
- "24224:24224"
volumes:
- ./config:/fluentd/etc
- ./data/fluentd/logs:/fluentd/logs
environment:
- FLUENTD_CONF=fluentd.conf
这将启动一个名为project_default的网络,然后启动流利。
然后,我想从包含我正在开发的应用程序的vanilla Docker容器连接到该流畅的实例。据我从文档中可以看出,我应该能够运行容器并使用以下命令连接到流畅的实例:
docker run --network=project_default -e FLUENTHOST='fluentd' myapp:1.0.0
其中FLUENTHOST环境变量传递了应该运行的fluentd的主机名。
当我运行这个时,我得到一个“查找'流畅':没有这样的主机”错误消息。
我在Docker Compose文件或docker run命令中错过了一步吗?
在docker-compose文件中,您需要指定自定义网络驱动程序桥。
networks:
your_network_name:
driver: bridge
然后使用--network =“your_network_name”标志运行另一个容器
我有类似的方法,但我通过不同的docker-compose文件运行两个容器,看看。
docker-compose文件在自定义网络名称代码网络上运行Container 1
version: '2'
services:
container_1:
build: container_1
networks:
- code-network
networks:
code-network:
driver: bridge
docker-compose文件运行Container 2以在现有的网络代码网络上运行
version: '2'
services:
container_2:
build: "container_2"
networks:
- code-network
networks:
code-network:
external: true
上面两个容器1和容器2都运行在同一个网络上,希望这会帮助你:)