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
相关推荐
孟婆来包棒棒糖~12 分钟前
Docker快速入门
运维·spring boot·docker·容器·tomcat
❀͜͡傀儡师3 小时前
Kubernetes (K8s) 部署Doris
云原生·容器·kubernetes
老友@6 小时前
RabbitMQ 延时队列插件安装与使用详解(基于 Delayed Message Plugin)
运维·分布式·docker·rabbitmq·延时队列
SHUIPING_YANG12 小时前
vscode cursor配置php的debug,docker里面debug
vscode·docker·php
lang2015092812 小时前
使用 Docker 部署 Apache RocketMQ
docker·apache·rocketmq
jack-hui613 小时前
docker配置gpu运行环境:linux离线安装nvidia-container,避免网络问题
linux·docker·容器
爱吃芝麻汤圆16 小时前
k8s之NDS解析到Ingress服务暴露
容器·kubernetes
王柏龙16 小时前
mongodb中的哈希索引详解
算法·mongodb·哈希算法
zwjapple16 小时前
Next.js 中使用 MongoDB 完整指南
开发语言·javascript·mongodb