目录
1. 创建容器网络
2. 安装MongoDB
4. 初始化数据库
5. 创建Yapi
-
创建容器网络
docker network create yapi
-
安装MongoDB
-
创建volume挂载卷
mkdir /data/mongo -p
-
启动MongoDB
docker run -d \ --name mongodb \ --restart always \ --net=yapi \ -p 27018:27017 \ -v /data/mongo:/data/db \ -e MONGO_INITDB_DATABASE=yapi \ -e MONGO_INITDB_ROOT_USERNAME=yapi \ -e MONGO_INITDB_ROOT_PASSWORD=yapi123 \ mongo:4.2.21
-
进入容器
docker exec -it mongodb /bin/bash
-
初始化数据库
#进入mongo cli mongo localhost:27017 #初始化数据库,依次执行如下命令 use admin; # 数据库账号密码 db.auth("yapi", "yapi123"); # 创建 yapi 数据库 use yapi; # 创建给 yapi 使用的账号和密码,限制权限 db.createUser({ user: 'yapi', pwd: 'yapi123', roles: [ { role: "dbAdmin", db: "yapi" }, { role: "readWrite", db: "yapi" } ] }); # 退出 Mongo Cli exit # 退出容器 exit
-
-
创建yapi的配置文件config.json
mkdir /data/yapi vim /data/yapi/config.json
{ "port": "3000", "adminAccount": "yapiadmin@163.com", "timeout":120000, "db": { "servername": "mongo", "DATABASE": "yapi", "port": 27018, "user": "yapi", "pass": "yapi123456", "authSource": "" }, "mail": { "enable": true, "host": "smtp.163.com", "port": 465, "from": "*", "auth": { "user": "yapiadmin@163.com", "pass": "yapiadminpassword" } } }
-
初始化数据库
docker run -d --rm \ --name yapi-init \ --link mongodb:mongo \ --net=yapi \ -v /data/yapi/config.json:/yapi/config.json \ yapipro/yapi:1.9.5 \ server/install.js
-
创建Yapi
docker run -d \ --name yapi \ --link mongodb:mongo \ --restart always \ --net=yapi \ -p 3000:3000 \ -v /data/yapi/config.json:/yapi/config.json \ yapipro/yapi:1.9.5 \ server/app.js
账号 : yapiadmin@163.com
密码 : yapiadminpassword