答案1
你可以而且应该这样做。只需创建几个环境,例如用于开发、测试、并用于生产. 只需为每个应用创建一个 Dockerfile 即可。
一种方法可能是:
创建一个
Dockerfile
(官方坏了,所以我创建了这个一个 PR):# Dockerizing MongoDB: Dockerfile for building MongoDB images # Based on ubuntu:18.04, installs MongoDB following the instructions from: # http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ FROM ubuntu:18.04 # Installation: # Import MongoDB public GPG key AND create a MongoDB list file RUN apt-get update && apt-get install -y gnupg2 ca-certificates RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 RUN echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" > /etc/apt/sources.list.d/mongodb-org-4.0.list # Update apt-get sources AND install MongoDB (latest stable version) RUN apt-get update && apt-get install -y mongodb-org # Create the MongoDB data directory RUN mkdir -p /data/db # Expose port #27017 from the container to the host EXPOSE 27017 # Set /usr/bin/mongod as the dockerized entry-point application ENTRYPOINT ["/usr/bin/mongod"]
建造
docker build --tag my_mongodb_1 .
跑步
docker run -p 27017:27017 --interactive --tty my_mongodb_1
要特别注意哪个用户可以访问哪个环境,因为忘记在开发人员设置上进行某些更改并最终以为您正在使用开发数据库是很常见且危险的。
这里是一篇关于如何做到这一切的好文章。