我正在通过以下方式将撰写文件部署到UCP上:
docker stack deploy -c docker-compose.yml custom-stack-name
最后,我想将多个撰写文件(每个撰写文件描述一个单独的微服务的设置)部署到一个docker网络上,例如appsnetwork
version: "3"
services:
service1:
image: docker/service1
networks:
- appsnetwork
customservice2:
image: myprivaterepo/imageforcustomservice2
networks:
- appsnetwork
networks:
appsnetwork:
docker stack deploy
命令自动创建一个新网络,其名称如下:custom-stack-name_appsnetwork我有什么选择?
最佳答案
尝试先自己创建网络
docker network create --driver=overlay --scope=swarm appsnetwork
之后,将网络置于外部
version: "3"
services:
service1:
image: nginx
networks:
- appsnetwork
networks:
appsnetwork:
external: true
之后,运行堆栈的两个副本
docker stack deploy --compose-file docker-compose.yml stack1
docker stack deploy --compose-file docker-compose.yml stack2
Docker检查两者是否显示同一网络中的IP
$ docker inspect 369b610110a9
...
"Networks": {
"appsnetwork": {
"IPAMConfig": {
"IPv4Address": "10.0.1.5"
},
"Links": null,
"Aliases": [
"369b610110a9"
],
$ docker inspect e8b8cc1a81ed
"Networks": {
"appsnetwork": {
"IPAMConfig": {
"IPv4Address": "10.0.1.3"
},
"Links": null,
"Aliases": [
"e8b8cc1a81ed"
],
关于docker - 如何在Docker Stack部署上禁用网络生成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46485249/