🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] # 使用 Docker 构建 Yapi 1. 创建 MongoDB 数据卷 ~~~ docker volume create mongo_data_yapi ~~~ 2. 启动 MongoDB ~~~ docker run -d --name mongo-yapi -v mongo_data_yapi:/data/db mongo ~~~ 3. 获取 Yapi 镜像,版本信息可在 阿里云镜像仓库 查看 ~~~ docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi ~~~ 4. 初始化 Yapi 数据库索引及管理员账号 ~~~ docker run -it --rm \ --link mongo-yapi:mongo \ --entrypoint npm \ --workdir /api/vendors \ registry.cn-hangzhou.aliyuncs.com/anoy/yapi \ run install-server ~~~ 自定义配置文件挂载到目录 /api/config.json,官方自定义配置文件 https://github.com/YMFE/yapi/blob/master/config_example.json 5. 启动 Yapi 服务 注意服务器开启3000端口 ~~~ docker run -d \ --name yapi \ --link mongo-yapi:mongo \ --workdir /api/vendors \ -p 3000:3000 \ registry.cn-hangzhou.aliyuncs.com/anoy/yapi \ server/app.js ~~~ 使用 Yapi 访问 http://localhost:3000 登录账号 admin@admin.com,密码 ymfe.org # 其他相关操作 关闭 Yapi ~~~ docker stop yapi ~~~ 启动 Yapi ~~~ docker start yapi ~~~ 升级 Yapi 1. 停止并删除旧版容器 ~~~ docker rm -f yapi ~~~ 2. 获取最新镜像 ~~~ docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi ~~~ 3. 启动新容器 ~~~ docker run -d \ --name yapi \ --link mongo-yapi:mongo \ --workdir /api/vendors \ -p 3000:3000 \ registry.cn-hangzhou.aliyuncs.com/anoy/yapi \ server/app.js ~~~ # 构建任意版本 yapi 镜像 提示:以下所有文件均放在同一目录下 1. 编写 Dockerfile ~~~ FROM node:9.2-alpine as builder RUN apk add --no-cache git python make openssl ADD yapi.zip /yapi.zip RUN mkdir /api && \ unzip yapi.zip && \ rm -f yapi.zip && \ mv yapi* /api/vendors RUN cd /api/vendors && \ npm install --production --registry https://registry.npm.taobao.org FROM node:9.2-alpine MAINTAINER 545544032@qq.com ENV TZ="Asia/Shanghai" HOME="/" WORKDIR ${HOME} COPY --from=builder /api/vendors /api/vendors COPY config.json /api/ EXPOSE 3000 ENTRYPOINT ["node"] ~~~ 2. 自定义配置文件 config.json ~~~ { "port": "3000", "adminAccount": "admin@admin.com", "db": { "servername": "mongo", "DATABASE": "yapi", "port": 27017 } } ~~~ 3. 镜像构建脚本 build ~~~ echo -e "\033[32m download new package (version $1) \033[0m" wget -O yapi.zip http://yapi.demo.qunar.com/publicapi/archive/$1 echo -e "\033[32m build new image \033[0m" docker build -t registry.cn-hangzhou.aliyuncs.com/anoy/yapi . ~~~ 使脚本可执行: `chmod a+x build` 4、本地构建镜像,版本列表 -> https://github.com/YMFE/yapi/releases ~~~ ./build <Version> ~~~ 示例: ./build v1.3.22 # chrome插件 链接:https://pan.baidu.com/s/1Tf-OjZ5XU3MuS0rTW_nslQ 密码:rbv2