docker yapi安装

概述

YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

docker安装,参考官方文档:https://hub.docker.com/r/yapipro/yapi

数据库准备 MongoDB

Docker 容器之间网络互通需要使用网桥,创建一个网桥yapi

docker network create yapi

YAPI 的数据库是 MongoDB,创建持久化目录

mkdir -p /data/mongo/data

拉取最新镜像

docker pull mongo:latest

启动 MongoDB,其中 -e 指定 MONGO_INITDB_ROOT_USERNAME 为 MongoDB 的 ROOT 用户名,MONGO_INITDB_ROOT_PASSWORD 为 MongoDB 的 ROOT 用户密码

docker run -d \
  --name mongodb \
  --restart always \
  --net=yapi \
  -p 27017:27017 \
  -v /data/mongo/data:/data/db \
  -e MONGO_INITDB_DATABASE=yapi \
  -e MONGO_INITDB_ROOT_USERNAME=yapipro \
  -e MONGO_INITDB_ROOT_PASSWORD=yapipro1024 \
  mongo

进入 MongoDB 容器

docker exec -it mongodb /bin/bash

进入 mongo cli

mongosh localhost:27017

如果出现以下提示,表示进入成功

Current Mongosh Log ID:	66c1bf49c2a529ef68149f47
Connecting to:		mongodb://localhost:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.2.10
Using MongoDB:		7.0.12
Using Mongosh:		2.2.10

For mongosh info see: https://docs.mongodb.com/mongodb-shell/

test> 

进入 MongoDB 的 mongo cli 后,执行以下语句进行初始化库表

use admin;
db.auth("yapipro", "yapipro1024");
# 创建 yapi 数据库
use yapi;
# 创建给 yapi 使用的账号和密码,限制权限
db.createUser({
  user: 'yapi',
  pwd: 'yapi123456',
  roles: [
 { role: "dbAdmin", db: "yapi" },
 { role: "readWrite", db: "yapi" }
  ]
});
# 退出 Mongo Cli
exit
# 退出容器
exit

启动 YAPI

创建配置文件

mkdir -p /data/yapi/conf
vi /data/yapi/conf/config.json

 {
   "port": "3000",
   "adminAccount": "hexiaohei1024@gmail.com",
   "timeout":120000,
   "db": {
     "servername": "mongo",
     "DATABASE": "yapi",
     "port": 27017,
     "user": "yapi",
     "pass": "yapi123456",
     "authSource": ""
   },
   "mail": {
     "enable": true,
     "host": "smtp.gmail.com",
     "port": 465,
     "from": "*",
     "auth": {
       "user": "hexiaohei1024@gmail.com",
       "pass": "xxx"
     }
   }
 }

拉取最新镜像

docker pull yapipro/yapi:latest

初始化数据库表

docker run -d --rm \
  --name yapi-init \
  --link mongodb:mongo \
  --net=yapi \
  -v /data/yapi/conf/config.json:/yapi/config.json \
  yapipro/yapi \
  server/install.js

启动yapi

docker run -d \
   --name yapi \
   --link mongodb:mongo \
   --restart always \
   --net=yapi \
   -p 3000:3000 \
   -v /data/yapi/conf/config.json:/yapi/config.json \
   yapipro/yapi \
   server/app.js

查看yapi日志

docker logs -f yapi

出现以下信息,表示启动成功

log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问: 
http://127.0.0.1:3000/
log: mongodb load success...
(node:1) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated

访问

http://192.168.20.131:3000/

 点击登录

初始化管理员账号在上面的 config.json 配置中

用户名:hexiaohei1024@gmail.com

初始密码:yapi.pro

可以登录后进入个人中心修改

 登录成功,效果如下:

### 在 Windows 上通过 Docker 部署和运行 YAPI 要在 Windows 系统上部署并运行 YAPI,需完成以下几个方面的配置: #### 1. 安装必要工具 在开始之前,需要确保已安装以下软件: - **Docker Desktop for Windows**: 可以从[Docker官网](https://www.docker.com/products/docker-desktop/)下载适用于 Windows 的版本。安装完成后,启用 WSL2 支持以便更好地兼容 Linux 容器。 - **Docker Compose**: 如果使用的 Docker 版本不自带 Compose 功能,则可以通过命令手动安装[^5]。 对于 Windows 用户来说,推荐直接使用最新版的 Docker Desktop,因为它已经集成了 Docker Compose 工具链。 #### 2. 创建 `docker-compose.yml` 文件 为了简化容器管理流程,可以创建一个 `docker-compose.yml` 文件来定义所需的服务。以下是适合于 YAPI 的基本配置示例: ```yaml version: '3' services: mongo: image: mongo:4.4 container_name: mongo-yapi restart: always environment: MONGO_INITDB_ROOT_USERNAME: admin MONGO_INITDB_ROOT_PASSWORD: admin volumes: - ./data/db:/data/db yapi: image: registry.cn-hangzhou.aliyuncs.com/anoy/yapi container_name: yapi-service ports: - "7001:7001" depends_on: - mongo entrypoint: ["npm", "run", "install-server"] working_dir: /api/vendors links: - mongo:mongo environment: REGISTRY_MONGODB_URI: mongodb://admin:admin@mongo:27017/yapi?authSource=admin ``` 此文件描述了一个 MongoDB 数据库实例以及基于该数据库构建的 YAPI 应用程序服务。注意端口映射部分 (`ports`) 将主机上的 7001 映射到容器内的相同端口号[^1]。 #### 3. 启动服务 保存上述 YAML 文件至任意目录下(比如命名为 `yapi-docker-compose.yml`),打开 PowerShell 或 CMD 并切换至此路径,执行如下指令启动所有关联的服务: ```bash docker-compose up -d ``` 这条命令会以后台模式拉取镜像、建立网络连接并且开启指定的服务进程。 如果遇到工作目录错误提示类似于 “the working directory is invalid”,请确认当前操作系统的绝对路径设置无误,并且避免混用 Git Bash 这类可能改变默认行为的 shell 终端[^3]。 #### 4. 访问 Web 界面 一旦成功启动之后,就可以通过浏览器访问地址 http://localhost:7001 来进入 YAPI 控制面板界面[^4]。 --- ### 注意事项 - 若首次运行时发现缺少某些依赖项或者报错无法正常加载页面,请尝试重新 pull 最新的官方镜像资源后再试一次。 - 对于生产环境中建议调整更多参数选项如持久化存储位置等进一步优化性能表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值