Docker 安装mongoDb
- 获取mongodb
- 安装
- 问题汇总
- 参考
获取mongodb
-
注意:
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. 创建文件夹
mkdir -p /home/mongodb/data
chmod -R 777 /home/mongodb/data
4. 创建MongoDB容器
docker run -d --name mongodb-4 --restart=always -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admin@mongodb -p 27017:27017 -v /home/mongodb/data:/data/db mongo:4.4.27
参数说明
-d 表示后台运行容器。
–name 指定容器名称。
–restart=always 设置容器随Docker服务重启而自动重启。
-p 27017:27017 将宿主机的27017端口映射到容器内的27017端口。
-v /home/mongodb/data:/data/db 把宿主机的一个目录挂载为容器内MongoDB的数据存储目录,确保数据持久化。
5. 进入容器并访问mongoDB
docker exec -it mongodb-4 mongo admin
6。试用账号密码登录
(1)退出容器
(2)登录
docker exec -it mongodb-4 /bin/bash
mongo -u admin -p admin@mongodb
问题汇总
**1. springboot集成mongodb报错:**com.mongodb.MongoCommandException: Command failed with error 18 (AuthenticationFailed): ‘Authentication failed.’ on server 192.168.64.128:27017. The full response is {“ok”: 0.0, “errmsg”: “Authentication failed.”, “code”: 18, “codeName”: “AuthenticationFailed”}
修改yaml配置添加:authentication-database: admin
spring:
data:
mongodb:
host: 192.22.1.187
port: 27017
#表示验证登录信息的库
authentication-database: admin
#表示要连接的库
database: log
username: admin
password: admin@mongodb
参考
- 建议安装4:WARNING: MongoDB 5.0+ requires a CPU with AVX support, and your current system does not appear to have that!
- 使用Docker安装MongoDB:https://blog.csdn.net/AAIT11/article/details/130107136