问题是信息无法保存在上
/db/data,因此我创建了一个解决方案,创建了自己的数据目录。
# Parent Dockerfile https://github.com/docker-library/mongo/blob/982328582c74dd2f0a9c8c77b84006f291f974c3/3.0/DockerfileFROM mongo:latest# Modify child mongo to use /data/db2 as dbpath (because /data/db wont persist the build)RUN mkdir -p /data/db2 && echo "dbpath = /data/db2" > /etc/mongodb.conf && chown -R mongodb:mongodb /data/db2COPY . /data/db2RUN mongod --fork --logpath /var/log/mongodb.log --dbpath /data/db2 --smallfiles && CREATE_FILES=/data/db2/scripts/*-create.js && for f in $CREATE_FILES; do mongo 127.0.0.1:27017 $f; done && INSERT_FILES=/data/db2/scripts/*-insert.js && for f in $INSERT_FILES; do mongo 127.0.0.1:27017 $f; done && mongod --dbpath /data/db2 --shutdown && chown -R mongodb /data/db2# Make the new dir a VOLUME to persists it VOLUME /data/db2CMD ["mongod", "--config", "/etc/mongodb.conf", "--smallfiles"]
感谢docker -library / mongo Github项目中的@yosifkit
,指出该卷会将数据存储在生成的映像中。我在文档中错过了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)