docker安装MongoDB
安装docker
建议用宝塔安装docker
我们还可以用 docker search mongo 命令来查看可用版本:
1、下载最新MongoDB镜像
$ docker pull mongo:latest
2、查看本地镜像
通过以下命令查看是否安装MongoDB
$ docker images
在上图中可以看到我们已经安装了最新版本(latest)的 mongo 镜像
3、创建文件目录挂载到虚拟机
mkdir -p /java/docker/mongo/conf
mkdir -p /java/docker/mongo/db
mkdir -p /java/docker/mongo/log
cd /java/docker/mongo/conf
vim mongodb.conf
#端口
port=27017
#数据库文件存放目录
dbpath=/java/docker/mongo/db
#日志文件存放路径
logpath=/java/docker/mongo/log
#使用追加方式写日志
logappend=true
#以守护线程的方式运行,创建服务器进程
fork=true
#最大同时连接数
maxConns=100
#不启用验证
#noauth=true
#每次写入会记录一条操作日志
journal=true
#存储引擎有mmapv1、wiredTiger、mongorocks
storageEngine=wiredTiger
#访问IP
bind_ip=0.0.0.0
#用户验证
auth=true
按esc键,输入保存
:wq!
4、运行容器
我们可以使用下面命令运行容器,并且挂载指定文件
docker run -d -p 27017:27017 -v /java/docker/mongo/db:/data/db -v /java/docker/mongo/conf:/data/conf -v /java/docker/mongo/log:/data/log --name mongo mongo
- -p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。
5、安装成功
我们可以通过docker ps -a查看容器运行信息:up代表在运行
接着使用以下命令添加用户和设置密码,并且尝试连接。
$ docker exec -it mongo mongo admin
进入容器创建用户
# 创建一个名为 admin,密码为 123456 的用户。
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
# 尝试使用上面创建的用户信息进行连接。
> db.auth('admin', '123456')
创建成功,使用客户端工具连接即可