使用Docker和MongoDB

使用Docker和MongoDB,mongodb,docker,Mongodb,Docker,我已经使用Docker和Kubernetes一段时间了,并且已经建立了一些数据库(postgres和mysql)和服务 现在我正在考虑添加mongoDB,但在用户管理方面似乎有所不同。 以博士后为例: 我可以立即在安装程序中使用密码声明用户,然后使用此密码进行连接。mongo图像似乎不支持这一点。有没有一种方法可以简单地在启动时声明用户,并使用类似于postgres设置的用户?也就是说,不必执行到映像中,就可以修改身份验证设置并重新启动mongo服务。是否可以使用环境变量:docker run

我已经使用Docker和Kubernetes一段时间了,并且已经建立了一些数据库(postgres和mysql)和服务

现在我正在考虑添加mongoDB,但在用户管理方面似乎有所不同。 以博士后为例:


我可以立即在安装程序中使用密码声明用户,然后使用此密码进行连接。mongo图像似乎不支持这一点。有没有一种方法可以简单地在启动时声明用户,并使用类似于postgres设置的用户?也就是说,不必执行到映像中,就可以修改身份验证设置并重新启动mongo服务。

是否可以使用环境变量:docker run-d-p 27017:27017-p 28017:28017-e MONGODB_USER=“USER”-e MONGODB_DATABASE=“mydatabase”-e MONGODB_PASS=“mypass”tutum/mongodb或者这不是你的意思吗?是的,但这是一种不推荐的docker回购。官方报告没有提到环境变量,对不起。我看到了新的repo,它非常清楚这一点:MongoDB默认情况下不需要身份验证,但可以配置为这样做。当您不想使用exec时,您可能可以创建自己的dockerfile(基于mongodb)并自行配置。这似乎是世界上最标准的事情,我很惊讶我找不到一个简单的可配置docker命令来实现这一点。使用env变量:docker run-d-p 27017:27017-p 28017:28017-e MONGODB_USER=“USER”-e MONGODB_DATABASE=“mydatabase”-e MONGODB_PASS=“mypass”tututum/MONGODB难道不可能吗?是的,但这是一个不推荐的docker repo。官方报告没有提到环境变量,对不起。我看到了新的repo,它非常清楚这一点:MongoDB默认情况下不需要身份验证,但可以配置为这样做。当您不想使用exec时,您可能可以创建自己的dockerfile(基于mongodb)并自行配置。这似乎是世界上最标准的东西,我很惊讶我找不到一个简单的可配置docker命令。