使用Docker搭建YApi接口管理平台

1、安装Docker

合集:Docker安装与使用

2、安装YApi

创建目录:

bash 复制代码
mkdir -p yapi/mongodb/{configdb,db}
cd yapi/

下载:

bash 复制代码
说明:使用git/wget下载或者直接下载压缩包

git命令:git clone https://github.com/YMFE/yapi.git
wget命令:wget https://github.com/YMFE/yapi/archive/refs/tags/v1.12.0.tar.gz
bash 复制代码
wget https://github.com/YMFE/yapi/archive/refs/tags/v1.12.0.tar.gz

解压:

bash 复制代码
tar -xf v1.12.0.tar.gz

项目结构:

bash 复制代码
# 命令:
tree -L 1 yapi

# 内容:
yapi
|-- config.json
|-- docker-compose.yaml
|-- Dockerfile
|-- mongodb
|-- v1.12.0.tar.gz
`-- yapi-1.12.0

2 directories, 4 files

复制配置文件:

bash 复制代码
cp yapi-1.12.0/config_example.json config.json

修改config.json文件:

bash 复制代码
{
  "port": "3000",
  "adminAccount": "admin@admin.com",
  "timeout":120000,
  "db": {
    "servername": "mongodb",
    "DATABASE": "yapi",
    "port": 27017,
    "user": "",
    "pass": "",
    "authSource": ""
  },
  "mail": {
    "enable": false,
    "host": "smtp.163.com",
    "port": 465,
    "from": "***@163.com",
    "auth": {
      "user": "***@163.com",
      "pass": "*****"
    }
  }
}

创建Dockerfile文件:

bash 复制代码
FROM node:8
COPY yapi-1.12.0 /www/yapi
WORKDIR /www/yapi
RUN npm install --production --registry https://registry.npmmirror.com

构建镜像:

bash 复制代码
docker build -t node-yapi:v1 .

创建docker-compose.yaml:

bash 复制代码
services:
  mongodb:
    image: mongo:latest
    container_name: mongodb
    privileged: true
    ports:
      - "27017:27017"
    tty: true
    volumes:
      - ./mongodb/configdb:/data/configdb
      - ./mongodb/db:/data/db
  nodejs:
    image: node-yapi:v1
    container_name: nodejs
    privileged: true
    ports:
      - "3000:3000"
    tty: true
    command: ["/bin/bash","-c","npm run install-server && node server/app.js"]
    volumes:
      - ./config.json:/www/config.json
    depends_on: 
      - mongodb
    links:
      - mongodb
networks:
  yapi_network:
    driver: bridge

启动容器:

bash 复制代码
# 创建并启动容器
docker-compose up -d

# 停止并销毁容器
# docker-compose down

查看日志:

bash 复制代码
# 命令
docker logs nodejs



# 内容
> yapi-vendor@1.11.0 install-server /www/yapi
>  node server/install.js

log: mongodb load success...
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"
log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问: 
http://127.0.0.1:3000/
log: mongodb load success...

3、浏览器访问

bash 复制代码
假设当前ip为192.168.186.128
浏览器访问:http://192.168.186.128:3000
默认管理员账户密码:admin@admin.com/ymfe.org

点击"登录 / 注册":

输入用户名密码:

点击"登录"后显示的页面:

4、详见

bash 复制代码
https://github.com/YMFE/yapi
https://hellosean1025.github.io/yapi/

5、其他

合集:API文档

合集:API文档2

相关推荐
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
程序员老赵4 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
杨浦老苏4 天前
轻量级Docker仪表板Servedash
运维·docker·监控·群晖·仪表板
正经教主4 天前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang4 天前
Docker 使用完整指南
运维·docker·容器
正经教主4 天前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
CodeStats4 天前
【虚拟机】 从 CPU 指令到虚拟机隔离:虚拟机就是一个“模拟了完整硬件的普通进程”
java·docker
ai产品老杨4 天前
突破安防碎片化:基于 Docker 与边缘计算的 AI 视频智能化中台,如何通过 GB28181/RTSP 统一接入与全套源码交付实现二次开发自由?
人工智能·docker·边缘计算
正经教主4 天前
【docker基础】第十三周:学习总结与进阶方向【完结】
运维·docker·容器
“码”力全开4 天前
解耦异构设备:基于 Docker 与边缘计算的 GB28181/RTSP 统一流媒体平台架构演进(全源码交付)
docker·架构·边缘计算