我的mongo容器正在运行:
docker run --security-opt=seccomp:unconfined -p 27017:27017 -p 28017:28017 --name mong --rm mong --link myapp
和我的应用docker run --rm -ti --security-opt=seccomp:unconfined -p8080:8080 --name myapp --link mong --expose 8080
当我运行docker port myapp
8080/tcp -> 0.0.0.0:8080
和
docker port mong
得到以下内容:27017/tcp -> 0.0.0.0:27017
28017/tcp -> 0.0.0.0:28017
但是,myapp没有看到很多端口。当我使用
docker run --rm -ti --security-opt=seccomp:unconfined -p8080:8080 --name myapp --link mong --expose 8080
标志运行--net=host
时,myapp开始看到多个容器端口,但停止暴露8080。如何解决?怎么了?
最佳答案
如果要链接两个或多个容器,可以使用network。
首先创建一个网络:
$ docker network create --driver bridge dev_network
现在使用--net = dev_network运行两个容器
容器1
$ docker run --security-opt=seccomp:unconfined -p 27017:27017 -p 28017:28017 --name mong --rm mong --net=dev_network
容器2
docker run --rm -ti --security-opt=seccomp:unconfined -p 8080:8080 --name myapp --net=dev_network
现在,您可以使用容器名称访问网络内的容器。
关于windows - 在Windows 10上链接两个Docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47923935/