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
相关推荐
容器魔方3 小时前
Bloomberg 正式加入 Karmada 用户组!
云原生·容器·云计算
muyun28008 小时前
Docker 下部署 Elasticsearch 8 并集成 Kibana 和 IK 分词器
elasticsearch·docker·容器
麦兜*8 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
麦兜*8 小时前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring
Nazi69 小时前
k8s的dashboard
云原生·容器·kubernetes
学编程的小程10 小时前
突破局域网限制:MongoDB远程管理新体验
数据库·mongodb
傻傻虎虎13 小时前
【Docker】常用帮忙、镜像、容器、其他命令合集(2)
运维·docker·容器
是小崔啊13 小时前
叩丁狼K8s - 概念篇
云原生·容器·kubernetes
清风66666620 小时前
基于STM32的APP遥控视频水泵小车设计
stm32·单片机·mongodb·毕业设计·音视频·课程设计
2401_8979300621 小时前
使用Docker轻松部署Neo4j图数据库
数据库·docker·neo4j