2018-07-17 13:19 狂师 阅读(1799) 评论(0) 编辑 收藏
在宿主机centos上启一个Mongo容器,暴露端口21117,并设置用户名,密码(root/mongo)
docker run --name mongo1 -p 21117:27017 -d mongo --noprealloc --smallfiles --auth
在宿主机上通过mongo客户端来连接
mongo --port 21117 admin
结果db.auth后,报错:
原因:mongo客户端版本较低导致,centos之前安装的版本为mongo 2.6.12,而docker对应的mongo版本为3.6,那既然因为版本过低导致,那就把宿主机上的mongo升级一下了
新建或修改文件,vim /etc/yum.repos.d/mongodb-org-3.4.repo
#添加以下内容: [mongodb-org-3.4] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc #这里可以修改 gpgcheck=0, 省去gpg验证
yum makecache
2、卸载旧版mongo
yum remove mongodb-2.6.12-6.el7.x86_64 yum remove mongodb-server-2.6.12-6.el7.x86_64
3、安装新版mongo
yum -y install mongodb-org
4、查看mongo版本
mongo --version
5、再次连接mongo服务
mongo --port 21117
可以看到,问题已经解决了~
查看mongo安装位置 :
whereis mongod
查看修改配置文件 :
vim /etc/mongod.conf
启动mongodb :
systemctl start mongod.service
停止mongodb :
systemctl stop mongod.service
查到mongodb的状态:
systemctl status mongod.service