找不到 Docker 撰写网络条目
Can't find Docker Compose network entry
我正在尝试从我的 Win10 笔记本电脑上的一个 Docker 容器 运行 与本地也 运行 的另一个容器进行通信。
我启动目标容器,我看到以下网络:
docker network ls
NETWORK ID NAME DRIVER SCOPE
...
f85b7c89dc30 w3virtualservicew3id_w3-virtual-service-w3id bridge
然后我用 docker-compose up
启动我的调用容器。然后我可以通过命令行成功地将我的另一个容器连接到网络:
docker network connect w3virtualservicew3id_w3-virtual-service-w3id w3vacationatibmservice_rest_1
但是,我无法通过将其添加到调用容器的 docker-compose.yml
文件的 network
部分来连接到同一网络。我的印象是他们基本上都做了同样的事情:
networks:
- w3_vacation-at-ibm_service
- w3virtualservicew3id_w3-virtual-service-w3id
错误消息告诉我它找不到网络,这不是真的,因为我可以通过命令行连接,所以我知道它确实存在 运行:
ERROR: Service "rest" uses an undefined network "w3virtualservicew3id_w3-virtual-service-w3id"
有人知道我错过了什么吗?
您在服务下定义的 network
应该在全局 networks
部分中定义(volumes
也是如此):
version 'X.Y'
services:
calling_container:
networks:
- your_network
networks:
your_network:
external: true
您真的必须为您的调用容器使用单独的 compose yml 吗?如果您的两个容器相互交互,您应该将它们 both 添加到同一个 compose yml 中。在这种情况下,您不必指定任何网络,它们将自动位于同一网络内。
我正在尝试从我的 Win10 笔记本电脑上的一个 Docker 容器 运行 与本地也 运行 的另一个容器进行通信。
我启动目标容器,我看到以下网络:
docker network ls
NETWORK ID NAME DRIVER SCOPE
...
f85b7c89dc30 w3virtualservicew3id_w3-virtual-service-w3id bridge
然后我用 docker-compose up
启动我的调用容器。然后我可以通过命令行成功地将我的另一个容器连接到网络:
docker network connect w3virtualservicew3id_w3-virtual-service-w3id w3vacationatibmservice_rest_1
但是,我无法通过将其添加到调用容器的 docker-compose.yml
文件的 network
部分来连接到同一网络。我的印象是他们基本上都做了同样的事情:
networks:
- w3_vacation-at-ibm_service
- w3virtualservicew3id_w3-virtual-service-w3id
错误消息告诉我它找不到网络,这不是真的,因为我可以通过命令行连接,所以我知道它确实存在 运行:
ERROR: Service "rest" uses an undefined network "w3virtualservicew3id_w3-virtual-service-w3id"
有人知道我错过了什么吗?
您在服务下定义的 network
应该在全局 networks
部分中定义(volumes
也是如此):
version 'X.Y'
services:
calling_container:
networks:
- your_network
networks:
your_network:
external: true
您真的必须为您的调用容器使用单独的 compose yml 吗?如果您的两个容器相互交互,您应该将它们 both 添加到同一个 compose yml 中。在这种情况下,您不必指定任何网络,它们将自动位于同一网络内。