【发布时间】:2020-02-03 14:41:57
【问题描述】:
您将如何编写 Dockerfile 脚本来为 mongoDB 4.2 创建管理员用户?
是否有不使用交互式子shell 创建管理员用户的单行命令? (在 mongoDB documentation 中没有看到)
感谢您的帮助。
传递 MONGO_INITDB_ROOT_USERNAME 和 MONGO_INITDB_ROOT_PASSWORD 不再起作用(已从 Docker hub mongo 映像 documentation 中删除)。
mongo Docker hub 文档仅显示交互式 shell 管理员用户创建。
> mongo admin
执行 mongo 交互式 shell,但是如何编写 shell 脚本以从顶级 shell 中的子 shell 中输入命令?
FROM mongo
RUN mongo admin ???? db.createUser({ user: 'jsmith', pwd: 'some-initial-password', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
docker 构建过程应该显示:
成功添加用户:{ “用户”:“jsmith”, “角色”:[ { “角色”:“userAdminAnyDatabase”, “分贝”:“管理员” } ] }
【问题讨论】:
标签: mongodb bash docker authentication dockerfile