跳到主要内容

单节点

2024年06月16日
柏拉文
越努力,越幸运

一、认识


二、操作


2.1 搜索 Mongodb 可用版本

docker search mongodb/mongodb-community-server

2.2 拉取 Mongodb 指定镜像

docker pull mongodb/mongodb-community-server:latest

2.3 映射 Mongodb 配置文件

1. 创建本地配置文件目录

mkdir ~/docker/mongodb

2. 创建本地 mongodb 配置文件

touch ~/docker/mongodb/mongo.conf

3. 编辑本地 mongodb 配置文件

vim ~/docker/mongodb/mongo.conf

内容如下

systemLog:
destination: file
path: /var/log/mongodb/mongod.log
logAppend: true
storage:
dbPath: /data/db
net:
port: 27037
bindIp: 0.0.0.0
#security:
#authorization: enabled

注意:

  1. path: 写入日志文件的地址是容器中的路径(不是宿主机里的地址)

  2. dbPath: 数据库目录是容器中的路径 (不是宿主机里的地址路径)

  3. port: 指定容器 mongodb 启动监听 27037 端口,

  4. bindIp: 0.0.0.0 是为了让宿主机可以访问容器的 mongodb 服务

  5. security 是开启账号密码登录验证方式,用井号做了注释,暂时不需要账号密码验证方式登录.

2.4 启动 Mongodb 容器镜像

docker run -d --name mongodb -p 27017:27017 -v ~/docker/mongodb/:/data/db -v ~/docker/mongodb/mongo.conf:/data/configdb/mongo.conf mongodb/mongodb-community-server:latest
  • -d: 设置容器以守护进程方式运行,返回容器id

  • --name mongodb: 指定docker实例别名 mongodb

  • -p 27017:27017: 指定容器端口 27017 映射到 本机端口 27017

  • -v ~/docker/mongodb/:/data/db: 宿主机 ~/docker/mongodb/ 数据库目录映射到容器 /data/db 目录

  • -v ~/docker/mongodb/mongo.conf:/data/configdb/mongo.conf: 宿主机mongodb配置文件 ~/docker/mongodb/mongo.conf 映射到容器 /data/configdb/mongo.conf

  • mongo:latest: 启动 mongo:latest 版本容器

2.5 进入 Mongodb 容器内部

docker exec -it 容器ID /bin/bash 或者 docker exec -it 容器ID bash 进入 Mongodb 本地容器

docker exec -it 容器ID /bin/bash

// 或者

docker exec -it 容器ID bash

通过 exit 退出 Mongodb 容器

2.6 本机连接 Mongodb 容器服务

mongosh

// 或者

mongosh "mongodb://127.0.0.1:27017"

// 尝试存储数据
db.runCommand(
{
hello: 1
}
)

2.7 宿主机端连接 Mongodb(可选)

mongosh "mongodb://IP 地址:27017"

// 或者

mongosh --host IP 地址 --port 27017

// 尝试存储数据
db.runCommand(
{
hello: 1
}
)

2.8 可视化工具连接 Mongodb(可选)