centos中docker mongodb 配置

本文介绍在Centos7系统安装Docker的步骤,还提及通过阿里云设置Docker镜像加速。详细说明了下载MongoDB镜像、启动容器并建立端口映射的过程,最后讲解了配置MongoDB权限的方法,以便程序连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  安装docker,对于Centos7,如下:

 $ sudo yum update
$ sudo yum -y install docker
$ sudo systemctl start docker

  首先下载mongodb的镜像,直接通过dockerhub下载较慢,可首先设置加速,通过阿里云,如下:

# 系统要求 CentOS 7 以上,Docker 1.9 以上。

sudo cp -n /lib/systemd/system/docker.service /etc/systemd/system/docker.service

sudo sed -i "s|ExecStart=/usr/bin/docker daemon|ExecStart=/usr/bin/docker daemon --registry-mirror=https://asclxy8u.mirror.aliyuncs.com|g" /etc/systemd/system/docker.service

sudo systemctl daemon-reload

sudo service docker restart

下载地址:docker pull mongo

 

下载后启动,先说比较坑的,看到官方的介绍,

docker run --name some-mongo -d mongo

命令是可以启动容器的,不过仅仅是一个内部的端口,本机倒是可以访问,外部就不行了。

可以看出是没有27017端口的。这就需要建立端口映射,把容器删除后,重新启动一个。

docker run --name daisy -d -p 27017:27017  mongo 

如图中所示,已经可以看到27017端口了。binggo,如此就可以访问了。

如果想配置权限,那么:

docker run --name daisy -d -p 27017:27017  mongo --auth
然后打开交互界面,
docker exec -it daisy mongo admin
配置一个用户
db.createUser({ user: 'message', pwd: 'hubhub', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] })
这样创建一个用户后,只能首先登录admin,然后转换到其他db,才有权限操作,如果想赋予新建db一个用户,那么use db 后

    db.createUser({user:"hub",pwd:"hubhub",roles: [{role: "root",db: "admin"}]})  

   在当前db上创建这个用户才有权限,这样在程序中就可以连接了。

 



转载于:https://www.cnblogs.com/ryansecreat/p/6146705.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值