feat(docs): 添加docker运维文档及相关资源文件
添加docker运维相关文档,包括: 1. 创建docs/resources目录下的.gitkeep文件 2. 更新.gitattributes添加视频文件类型 3. 在导航栏添加docker运维入口 4. 新增docker运维文档目录结构 5. 添加mongodb和ETLCloud部署指南
This commit is contained in:
70
docs/notes/ops/docker/mongodb.md
Normal file
70
docs/notes/ops/docker/mongodb.md
Normal file
@@ -0,0 +1,70 @@
|
||||
---
|
||||
title: 使用 Docker 部署 MongoDB
|
||||
createTime: 2025/12/24 16:34:00
|
||||
icon: mdi:database
|
||||
permalink: /ops/docker/mongodb/
|
||||
---
|
||||
|
||||
本教程将介绍如何使用 Docker 快速部署一个 MongoDB 实例。
|
||||
|
||||
## 在 Ubuntu 上部署 MongoDB:4.2 实例
|
||||
|
||||
我们先拉取 MongoDB:4.2 镜像:
|
||||
|
||||
```bash
|
||||
docker pull mongo:4.2
|
||||
```
|
||||
|
||||
创建一个目录用于存储 MongoDB 数据:
|
||||
|
||||
```bash
|
||||
mkdir -p /data/mongo/
|
||||
```
|
||||
|
||||
启动 MongoDB 容器:
|
||||
```bash :wrap
|
||||
sudo docker run --restart=always -itd --name mongo -p 27018:27017 -v /data/mongo/:/data/db mongo:4.2 --auth
|
||||
```
|
||||
命令详解:
|
||||
- `--restart=always`:容器重启时自动启动。
|
||||
- `-itd`:交互式模式运行容器,后台模式。
|
||||
- `--name mongo`:为容器命名为 mongo。
|
||||
- `-p 27018:27017`:将主机的 27018 端口映射到容器的 27017 端口。
|
||||
- `-v /data/mongo/:/data/db`:将主机的 /data/mongo/ 目录挂载到容器的 /data/db 目录,用于持久化存储数据。
|
||||
- `mongo:4.2`:使用 MongoDB:4.2 镜像。
|
||||
- `--auth`:启用身份验证功能。
|
||||
|
||||
进入 MongoDB 容器:
|
||||
```bash
|
||||
docker exec -it mongo mongo admin
|
||||
```
|
||||
|
||||
### 在 MongoDB 容器中创建管理员用户
|
||||
先进入 admin 数据库
|
||||
```bash
|
||||
use admin;
|
||||
```
|
||||
创建管理员用户 admin, 密码 root, 角色为 root。
|
||||
```bash
|
||||
db.createUser( { user: "root", pwd: "root", roles:['root'] });
|
||||
```
|
||||
退出 MongoDB 容器:
|
||||
```bash
|
||||
exit
|
||||
```
|
||||
使用 root 用户进行登录
|
||||
```bash
|
||||
docker exec -it mongo mongo admin -u root -p root
|
||||
```
|
||||
这里还能创建一个 admin 用户,用密码 admin,角色为 readWriteAnyDatabase, dbAdminAnyDatabase。
|
||||
```bash
|
||||
db.createUser( { user: "admin", pwd: "admin", roles:['readWriteAnyDatabase','dbAdminAnyDatabase'] } );
|
||||
```
|
||||
验证用户,这里会登录到 admin
|
||||
```bash
|
||||
db.auth("admin","admin");
|
||||
```
|
||||
删除用户的话可以使用,注意这里要切换回 root 用户
|
||||
```bash
|
||||
db.dropUser("admin");
|
||||
```
|
||||
Reference in New Issue
Block a user