我有一个在通过标准“docker run ...”命令启动的主机上运行的docker容器。运行的网络是默认名称“directory_default”,其中“directory”是当前目录的名称。从通过组合启动的容器访问正在运行的容器
我还得到了一个docker compose文件(在同一个主机上),它包含需要访问已经运行的容器的另一个容器定义。但是,在运行组合文件时,我不断看到一个错误,指出无法访问网络。
阅读Cannot link to a running container started by docker-compose似乎指向一个类似的问题,但相反的方式(连接到运行容器通过撰写推出)。
我已经尝试在撰写中设置env变量并使用--project-name标志来设置网络,但没有运气。
docker network ls
但在运行时:
docker-compose up -d
然后给出了错误:
我跑的时候也使用撰写文件的“网络”部分定义的网络名字,我看到试过ERROR: Service "my_service" uses an undefined network "my_already_existing_network that you see from docker network ls"
这里是正在使用的输出/文件(目录中的“测试”运行):
docker network ls
NETWORK ID NAME DRIVER SCOPE
fc4c3de62436 bridge bridge local
db6b28f177d0 test_default bridge local
5db4787312e5 host host local
64dfb53be850 none null local
第一个容器是通过“docker run ...”启动的,如前面从“test”目录中所述。撰写文件如下:如在撰写文档描述
--project-name test_default
:
version: "3"
services:
test_container1:
networks:
- test_default
image: mytest
container_name: mytest
restart: on-failure
ports:
- "8003:8003"
我还试图除去“网络”部分上方和调用与搬运工-组成。我没有使用群模式。
你请可以添加撰写文件,网络细节(驱动器)。你使用群模式? – Sreeni
向OP添加了详细信息 – bzo