Docker 安装 MongoDB

这篇具有很好参考价值的文章主要介绍了Docker 安装 MongoDB。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、什么是MongoDB

        MongoDB 是一个基于分布式文件存储的数据库。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

二、MongoDB的安装

这里使用docker来安装MongoD

1.docker 拉取mysql镜像

docker pull mongo:latest

docker安装mongodb6.0.5,Docker,docker,容器,运维

2.运行容器

创建外部挂载的文件并进行授权

mkdir -p /mydata/mongo/config
mkdir -p /mydata/mongo/data
mkdir -p /mydata/mongo/logs
touch /mydata/mongo/config/mongod.conf
chmod 777 /mydata/mongo

然后,使用编辑器打开mongod.conf文件,并添加以下内容:

# 数据库存储路径
dbpath=/mydata/mongo/data

# 日志文件路径
logpath=/mydata/mongo/logs/mongod.log
 
# 监听的端口
port=27017

# 允许所有的 IP 地址连接
bind_ip=0.0.0.0

# 启用日志记录
journal=true

# 是否后台运行
fork=true     
                   
# 启用身份验证
#auth=true 

 这个配置文件包含了MongoDB的存储路径、日志路径、监听IP和端口等配置项。可以根据自己的需求进行修改。

运行MongoDB容器

docker run -dit --name mongo \
-p 27017:27017 \
-v /mydata/mongo/config/mongod.conf:/etc/mongod.conf \
-v /mydata/mongo/data:/data/db \
-v /mydata/mongo/logs:/var/log/mongodb \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
--restart=always  \
mongo

docker安装mongodb6.0.5,Docker,docker,容器,运维

参数说明

-i:表示运行容器
-t:表示容器启动后进入其命令行
-d:守护式方式创建容器在后台运行
-name:容器名称

 -p 27017:27017     端口映射    前面是外部访问端口:后面内部开发的端口,mongoDB默认是27017端口

 -v /mydata/mongo/data:/data/db  给容器内部的数据文件指向mongodbdata ,即删除了容器,容器数据也不会丢失,下次创建容器继续挂载到/mydata/mongo/data即可看到删除容器之前的数据
-e MONGO_INITDB_ROOT_USERNAME=admin

-e MONGO_INITDB_ROOT_PASSWORD=123456  指定容器内的环境变量 初始化容器账号、密码
--restart=always   容器挂掉后自动重启

注意:如果是云服务器,记得开启对应的端口,添加对应的安全组相关策略。 

3. 创建用户并设置密码

进入容器内部

docker exec -it mongo /bin/mongosh
//或
docker exec -it mongodb bash

//登录容器
mongo admin -u admin -p 123456     -u 后面的是创建容器指定的账号   -p 后面跟的是创建容器指定的密码

说明:
如果MongoDB6.0及以上使用:
docker exec -it mongo /bin/mongosh
如果是6.0以下的版本使用:
docker exec -it mongo /bin/mongo 

docker安装mongodb6.0.5,Docker,docker,容器,运维

三、创建MongoDB用户 

1.mongo中各个角色对应的权限

权限 说明
read 允许用户读取指定数据库
readWrite 允许用户读写指定数据库
dbAdmin 允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin 允许用户向system.users集合写入,可以在指定数据库里创建、删除和管理用户
clusterAdmin 只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限
readAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限
root 只在admin数据库中可用。超级账号,超级权限

2.创建一个用户,赋予用户root权限 

注意:在createUser之前先use admin切换一下

docker安装mongodb6.0.5,Docker,docker,容器,运维

 然后执行创建用户命令

db.createUser(
	{
		user:"root",
		pwd:"123456",
		roles:[{role:"root",db:"admin"}]
	}
);

//尝试使用上面创建的用户信息进行连接。
db.auth('root', '123456');

docker安装mongodb6.0.5,Docker,docker,容器,运维

 返回 { ok:1} 则说明创建成功。

其他相关命令

//更新用户角色,修改用户权限,不会覆盖原权限信息,只新增权限:
db.updateUser("admin",{roles:[{role:"readWrite",db:"admin"}]})

//更新用户密码
db.changeUserPassword("admin","123456")

//删除用户
db.dropUser({'admin'})

//查看所有用户
show users

//查看数据库(非admin数据库的用户不能使用数据库命令)
show dbs

四、连接 MongoDB

使用Navicat 连接mongoDB,建议用16版本的,低版本可能没有连接mongoDB的选项

docker安装mongodb6.0.5,Docker,docker,容器,运维

docker安装mongodb6.0.5,Docker,docker,容器,运维

连接成功后,打开如下

docker安装mongodb6.0.5,Docker,docker,容器,运维文章来源地址https://www.toymoban.com/news/detail-765305.html

到了这里,关于Docker 安装 MongoDB的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker 安装mongodb 虚拟机安装mongodb

    生产环境直接安装比较好,以及使用集群环境,本文仅测试交流使用,我用来写分布式im测试使用: nami-im: 分布式im, 集群 zookeeper netty kafka nacos rpc主要为gate(长连接服务) logic (业务) lsb (负载均衡)store(存储) 1.  mongodb特点 : 支持存储海量数据;(例如:直播中的打赏

    2024年02月13日
    浏览(31)
  • docker学习(十五)docker安装MongoDB

    什么是MongoDB? MongoDB 是一个开源的、面向文档的 NoSQL 数据库管理系统,它以高性能、灵活的数据存储方式而闻名。与传统的关系型数据库不同,MongoDB 采用了一种称为 BSON(Binary JSON)的二进制 JSON 格式来存储数据。它是一种非常适合存储大量非结构化或半结构化数据的数据库

    2024年02月12日
    浏览(29)
  • docker - 常用容器部署命令大全(MySQL、MongoDB、Redis、RabbitMQ、ES、Kibana、Nacos、Sentine)

    目录 一、常用容器运行指令 MySQL Redis RabbitMQ ElasticSearch  kibana  Nacos Sentinel a)未持久化部署 b)持久化部署 a)未持久化部署: b)持久化部署:   a)为了 es 和 将来要下载的 kibana 进行互联,因此需要我们去创建一个网络. b) ES 部署 Ps:如果报错 \\\"Caused by: java.nio.file.Access

    2024年01月20日
    浏览(80)
  • Docker 安装 MongoDB

            MongoDB 是一个基于分布式文件存储的数据库。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 这里使用docker来安装MongoD 创建外部挂载的文件并进行授权 然后,使用编辑器打开mongod.conf文件,并添加以下内

    2024年02月04日
    浏览(30)
  • Docker 安装 MongoDb4

    注意: WARNING: MongoDB 5.0+ requires a CPU with AVX support, and your current system does not appear to have that! **hub官网(需要梯子):**https://hub.docker.com/_/mongo/tags?page=5 建议获取4;如果cpu不支持; 1. 搜索mongodb docker search mongodb 2. 获取镜像 docker pull mongo:4.4.27 3. 创建文件夹 4. 创建MongoDB容器 参数

    2024年01月20日
    浏览(74)
  • docker安装mongoDB及使用

    1.mongo的体系结构 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据字段/域 index index 索引 table joins 表连接,MongoDB不支持 primary key primary key 主键,MongoDB自动将_id字段设置为主键 2. mongoDB的特点(或使

    2024年02月02日
    浏览(46)
  • Docker安装MongoDB 7.0.2

    --auth :需要密码才能访问容器服务。 -e MONGO_INITDB_ROOT_USERNAME :设置用户名 -e MONGO_INITDB_ROOT_PASSWORD :设置密码 上述命令的意思如下: 使用交互的形式, 在 名字为 mongodb 的容器中实行 bash这个命令 将其中的 bindIp: 127.0.0.1 注释掉# bindIp: 127.0.0.1 或者改成bindIp: 0.0.0.0 即可开启远程连

    2024年02月08日
    浏览(27)
  • Docker 如何安装、启动、配置 MongoDB?

    前提 : 已安装docker和docker-compose 注 :连接之前,确保云服务器 端口27017已放行,详见《云服务设置端口放行》 ​ 备份方式:docker cp + mongodump 恢复方式:docker cp + mongorestore 比较 分类 Oralce/Mysql MongoDB Mongoose 1 数据库实例 MongoDB实例 Mongoose 2 模式(schema) 数据库(database) mongoose

    2024年02月12日
    浏览(43)
  • 使用 Docker 安装 MongoDB 数据库

    by emanjusaka from https://www.emanjusaka.top/2024/01/docker-create-mongo-db 彼岸花开可奈何 本文欢迎分享与聚合,全文转载请留下原文地址。 -d 后台运行 --restart=always 自动重新启动 --privileged 允许容器以特权模式运行 -v /opt/doc/data:/data/db 数据挂载 -p 27017:27017 端口挂载 --auth 启用了身份验证

    2024年01月18日
    浏览(48)
  • 05 Docker 安装常用软件 (mongoDB)

    目录 1. mongoDB简介 1.1 mongodb的优势 2. mongodb的安装 2.1 创建数据文件夹 2.2 备份+日志 2.3 配置文件夹  2.4 创建两个文件  --- 2.4.1 配置如下:  2.5 拉取mongodb 2.6 运行容器   2.7 进入mongodb容器 --- 2.7.0 高版本(6.0)以上是这样的 , 旧版的没研究  --- 2.7.1 查询版本 --- 2.7.2  进入amdin数据

    2024年02月16日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包