使用docker
ssh 登录服务器。
# 拉镜像
docker pull mongo
# 查看
docker images
# 启动镜像
docker run -itd --name mongo -p 27017:27017 mongo --auth
# 进入容器的mongo
docker exec -it mongo mongo admin
# 或者(先进入容器在执行mongo命令)
docker exec -it mongo /bin/bash
mongo
# 下面在mongo里面操作
# 创建mongo用户(mongo默认是没有用户)
db.createUser({user:'admin',pwd:'123456',roles:[{role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]})
# 验证
db.auth('admin', '123456')
# 查看当前数据库
db
# 查看所有数据库
show dbs
# 创建数据库cache
use cache
# 创建集合
db.createCollection("cache")
# 查看当前数据库的集合
show collections
使用nginx反向代理mongo请求
前提:需要nginx的stream模块
如果没有加需要重新./configure --with-stream,再执行make,注意保存自己原来的配置文件。
在nginx的conf文件夹下,创建一个mongo.conf,在nginx.conf中include进去。
# mongo.conf
# 12机器的27017端口的mongo请求就会被nginx转到到20机器的27017上
stream {
upstream mongo {
server 192.168.11.12:27017;
}
server {
listen 192.168.11.20:27017;
proxy_pass mongo;
}
}
然后重启nginx