docker stack部署与mongo卷
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker stack部署与mongo卷相关的知识,希望对你有一定的参考价值。
我用命令启动我的docker堆栈:
docker stack deploy --with-registry-auth -c docker-compose.yml app
我的docker-compose.yml包含mongo的条目:
mongodb:
image: mongo:3.6
volumes:
- mongodb:/var/lib/mongodb
ports:
- 27017:27017
networks:
- backend
environment:
- AUTH=yes
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "5"
deploy:
replicas: 1
placement:
constraints: [node.hostname == hostname]
networks:
frontend:
backend:
volumes:
mongodb:
我停止与docker stack rm app
的码头堆栈为什么我在第二次启动后使用相同的命令docker stack deploy --with-registry-auth -c docker-compose.yml app
丢失mongo中的数据?如何避免身份证?
谢谢,投球
答案
好的,我找到了答案..
基于图像:mongo:3.6 Dockerfile,已经指定了两卷:VOLUME /data/db /data/configdb
所以在docker-compose.yml中需要将主机目录挂载到该卷中:
mongodb:
image: mongo:3.6
volumes:
- /sampledir/db:/data/db <-----
- /sampledir/configdb:/data/configdb <-----
ports:
- 127.0.0.1:27017:27017
networks:
- backend
environment:
- AUTH=yes
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "5"
deploy:
replicas: 1
placement:
constraints: [node.hostname == hostname]
以上是关于docker stack部署与mongo卷的主要内容,如果未能解决你的问题,请参考以下文章
DockerDocker数据卷模式(bind mount与docker managed volume)数据卷插件convoy之NDF部署使用