安装
echo "拉取 mongo 镜像"
docker pull mongo:4.4.15
echo "创建 minio 相关目录"
mkdir -m 777 -p /data/docker/mongo/data
mkdir -m 777 -p /data/docker/mongo/config
echo "运行 mongo"
docker run -d --name mongo \
--restart=always \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=xxxx\
-v /data/docker/mongo/data:/data/db \
-v /data/docker/mongo/config:/data/configdb \
mongo:4.4.15
备份
# 进入容器
docker exec -it mongo /bin/bash
# 执行数据备份命令
## 有用户模式
mongodump -h xxx.xx.xx.xxx --port 27017 --authenticationDatabase admin -u='root' -p='xxxx' -d gx -o /dump
# 打包备份文件夹
tar -zcvf gx.tar.gz /dump
# 退出容器
exit
# 将文件复制至宿主机器 docker cp 容器名:/来源文件地址 目标地址
docker cp mongo:/gx.tar.gz /data/backup/mongo
恢复
# 将文件复制至容器内
docker cp /data/backup/mongo/gx.tar.gz mongo:/dump/
# 进入容器
docker exec -it mongo /bin/bash
# 进入备份文件夹
cd /dump
# 解压备份文件 至当前文件夹
tar -xzvf /data/backup/mongo/gx.tar.gz
# 执行数据还原命令
## 有用户模式
mongorestore -h xxx.xx.xx.xxx:27017 -d gx --dir /dump/gx --authenticationDatabase admin -u root -p xxxx