docker安装mongoDB

1. 拉取MongoDB镜像

首先,我们需要从Docker Hub上拉取MongoDB的官方镜像。打开终端,运行以下命令:

bash 复制代码
docker pull mongo

2. 查看已下载的镜像

拉取完成后,我们可以使用以下命令查看已下载的MongoDB镜像:

bash 复制代码
docker images

3. 创建持久化映射目录

为了将MongoDB的数据保存在宿主机上,我们需要创建一个持久化映射目录。运行以下命令:

bash 复制代码
mkdir -p /usr/local/mongodb/data/db
chmod 777 /usr/local/mongodb/data/db

4. 创建MongoDB容器

接下来,我们将创建一个MongoDB容器,并将其命名为"mongo"。运行以下命令:

bash 复制代码
docker run \
-d \
--name mongo \
-v /usr/local/mongodb/data/db:/data/db \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=mongoroot  \
--privileged=true mongo

这个命令中,我们设置了容器名为"mongo",将宿主机的/usr/local/mongodb/data/db目录映射到容器的/data/db目录,将容器的27017端口映射到宿主机的27017端口,并设置了初始用户名和密码。

5. 连接MongoDB

容器创建成功后,我们可以使用以下命令连接到MongoDB:

bash 复制代码
docker exec -it mongo mongosh -u root -p mongoroot --authenticationDatabase admin

6. 图形化连接MongoDB

除了使用命令行工具连接MongoDB,我们还可以使用图形化工具进行连接。这里我们使用Navicat。打开Navicat,输入连接信息,点击"测试连接"。

7. 创建新的数据库和用户

在连接到MongoDB后,我们可以创建一个新的数据库和用户。运行以下命令:

bash 复制代码
use big-data

然后,创建一个新的用户:

bash 复制代码
db.createUser({
    user: "root",
    pwd: "big-data-root",
    roles: [
        { role: "readWrite", db: "big-data" }
    ]
})

8. 使用新用户连接MongoDB

创建新用户后,我们可以使用该用户进行连接。在Navicat中输入新用户的连接信息,点击"测试连接"。

至此,我们已经成功使用Docker安装了MongoDB,并创建了一个新的数据库和用户。现在,我们就可以在MongoDB中进行数据操作和查询了。

参考链接:cengxuyuan.cn

相关推荐
m0_646429977 小时前
Docker 完整核心知识点总结(超通俗易懂版)
运维·docker·容器
吴声子夜歌9 小时前
Docker入门与实战——实战案例(Web服务与应用)
docker·容器
ly76899 小时前
MongoDB 副本集选举风暴排查:从心跳超时到 Journal 刷盘阻塞
数据库·mongodb·php·mongodb 副本集·选举风暴·journal 刷盘·writeconcern
Wang's Blog10 小时前
Java 项目部署之 Docker工具快速入门: Docker 架构拆解:镜像、容器、守护进程与 Registry
java·docker·架构
java_logo10 小时前
Docker 部署 OpenViking:轻松搭建 AI Agent 上下文数据库平台
数据库·人工智能·docker·agent·火山引擎·openviking·轩辕镜像
a59865210 小时前
Docker云手机搭建挂机环境,外网远程访问完整实操
docker·容器·智能手机·云手机
夜之眷属10 小时前
服务启动即崩:InetAddress.getLocalHost() 抛 UnknownHostException 排查记
java·运维·后端·docker
郭老二11 小时前
【docker】使用阿里云的容器镜像服务(ACR)构建自己的容器仓库
阿里云·docker·容器
Wang's Blog15 小时前
Java 项目部署之 Docker工具快速入门: Docker 是什么以及它如何解决部署环境问题
java·开发语言·docker
AIGC大时代15 小时前
LLM Agent 执行沙箱闸门:失败含义与当天最小实验
docker·沙箱·闸门·bubblewrap·llm agent