01-Docker部署MongoDB

命令一键部署

拉取镜像

shell 复制代码
# docker pull mongdo:4.0.3

方式一:

数据为持久化:不挂载容器卷

shell 复制代码
# docker run -itd --name mongo -p 27017:27017 mongo --auth
  • -itd 交互后台运行容器
  • --name 自定义容器名称

创建mongoDB账号

1)进入容器创建数据库访问用户账号密码,并且尝试连接

shell 复制代码
[root@nhk ~]# docker exec -it mongo mongo admin
MongoDB shell version v5.0.5
connecting to: mongodb://127.0.0.1:27017/admin?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("2c914490-5b3d-4c44-b85f-abc0963cf2c2") }
MongoDB server version: 5.0.5
================
Warning: the "mongo" shell has been superseded by "mongosh",
which delivers improved usability and compatibility.The "mongo" shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
================
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
	https://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forums
	https://community.mongodb.com
> 

2)执行mongoDB 语句, 创建mongoDB账号

shell 复制代码
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
Successfully added user: {
	"user" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		},
		"readWriteAnyDatabase"
	]
}

3)使用创建账号进行连接

shell 复制代码
> db.auth("admin","123456")
1

方式二:

数据持久化:挂载容器卷

shell 复制代码
# docker run --name my_mongo -v /opt/data/mongodb:/data/db --rm -d -p 27017:27017 mongo:4.0.3

参数说明:

  • -itd 交互后台运行容器
  • --name 自定义容器名称
  • -p 27017:27017 容器服务的 27017 端口映射到宿主机的 端口 27017,那么外部可以通过 宿主机 IP:27017 访问容器内 mongo。
  • 镜像名
  • --auth 需要密码才能访问容器服务

进入容器

shell 复制代码
# docker exec -it mongo /bin/bash

使用mongo客户端

复制代码
mongo
相关推荐
apgk111 小时前
基于Canal实现mysql数据同步到消息队列(RabbitMQ/Kafka)详细操作教程
docker·kafka·rabbitmq
fatcoder11 小时前
玩转Docker 06 — 容器网络
前端·后端·docker
strength_zhou201311 小时前
Python检查MongoDB索引列中的字段是否存在
python·mongodb
xiaoxiangsiyan12 小时前
企业日常运维高频应用服务全解
运维·网络·云原生·容器·dns
AR_xsy12 小时前
docker--资源配额 配置
运维·docker·容器
橙-极纪元13 小时前
把docker的镜像文件从一台服务器中,迁移至另一台服务器
服务器·docker·容器
RobinDevNotes15 小时前
K8s+Ray+vLLM打穿大模型全生命周期(有实践步骤)
人工智能·云原生·容器·kubernetes·生活·vllm
雨声不在15 小时前
docker-android 重启后镜像起不来
android·docker·容器
AR_xsy17 小时前
k8s随笔-cordon排水
云原生·容器·kubernetes
宋辰轩18 小时前
Docker导致的wsl2崩溃问题
docker·wsl2