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
相关推荐
闲云自留地5 小时前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd
薛定谔的悦8 小时前
光储充一体机从主控到执行单元的双层架构
数据库·mongodb·架构
孙克旭_9 小时前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
java_logo1 天前
Docker 部署 EmulatorJS:轻松搭建浏览器复古游戏平台
游戏·docker·容器·复古游戏·轩辕镜像·emulatorjs·红白机
吴声子夜歌1 天前
Kubernetes权威指南——网络原理(一)
网络·容器·kubernetes
方便面不加香菜1 天前
Docker Container --容器及容器的操作案例详解
运维·docker·容器
无人生还别怕1 天前
如何搭建docker仓库(轻量级)registry
linux·运维·docker·云原生·容器·registry·openanolisos
YYYing.2 天前
【K8s系列 (一) 】Docker与容器(上篇)
docker·云原生·容器·kubernetes
csdn_aspnet2 天前
使用 Docker 和 RedisInsight 设置 Redis 以进行本地开发
redis·docker·容器·redisinsight
余槐i2 天前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化