避坑!!!docker安装mongodb及配置

Posted 倪馒头

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了避坑!!!docker安装mongodb及配置相关的知识,希望对你有一定的参考价值。

安装docker

此文是在ubuntu虚拟机下安装docker:

命令如下:

1、更新apt包
apt-get update
2、安装以下包让apt可以通过HTTPS使用存储库
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
3、添加Docker官方的GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4、设置stable存储库:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
5、再次更新apt包
sudo apt-get update
6、安装最新版的docker ce:
sudo apt-get install -y docker-ce
7、最后验证docker状态:
service docker status

 

安装mongodb

 1、先查找mongo,执行命令:

docker search mongo

2、拉取mongo最新镜像,执行命令:

docker pull mongo

3、查看本地镜像,执行命令:

docker images

可查看到mongo镜像

 

 运行mongo容器并设置用户

这里采用的是官网的方法,初始化时并设置账号密码

在这里强烈建议大家,一定要去看官方文档:https://hub.docker.com/_/mongo,网上一堆设置太多坑,不说了都是泪

docker run -d  -p 27017:27017 --network somework --name mongodb \\
-e MONGO_INITDB_ROOT_USERNAME=用户名 \\
-e MONGO_INITDB_ROOT_PASSWORD=密码 \\
mongo

参数注解:

--network:将容器连接到网络,这里是我创建了一个网络:somework,

创建网络格式为:docker network create 网络名称(默认自动创建为bridge模式)

查看网络信息可使用命令:docker network ls

-p:匹配端口,宿主机端口:镜像端口

--name:命名容器名称

-d:设置后台运行容器

 

查看运行的容器,执行命令:

docker ps

 

 

进入容器,执行命令:

docker exec -it 容器ID bash

进入后执行命令查看是否连接mongodb成功

mongo 127.0.0.1:27017 -u \'username\' -p \'password\' --authenticationDatabase \'admin\'

 

 

重点来了!!!

在本地机使用可视化工具robomongo连接,使用宿主机IP和数据库端口号,填写配置的账号密码,但一直报错权限问题,如下图:

 

 然后开始怀疑自我,检查了防火墙、端口映射问题,同局域网ping问题,

数据库版本是4.2.7,最后下载了一个高版本的可视化工具Robo 3T,居然可以连接上了,嗯,就这么神奇

可视化工具官网Robo 3T:

https://robomongo.org/download

 

以上是关于避坑!!!docker安装mongodb及配置的主要内容,如果未能解决你的问题,请参考以下文章

Docker运行MongoDB及Redis及ssh端口映射远程连接

docker安装mongoDB及使用

毕业实习FinalShell Hadoop Scala安装运行问题解决及避坑事项

MongoDB未授权访问漏洞复现及docker.mongodb下--auth授权验证

Docker部署MongoDB副本集

10个常见的 PostgreSQL 错误及避坑指南!