在Ubuntu上集成Swagger主要有以下两种常见方式:
安装依赖
确保已安装Node.js和npm,然后全局安装Swagger工具:
sudo apt update
sudo apt install nodejs npm
sudo npm install -g swagger-jsdoc swagger-ui-express
创建Swagger配置文件
在项目根目录创建swagger.json或swagger.yaml文件,定义API接口信息,例如:
{
"swagger": "2.0",
"info": {"title": "Sample API", "version": "1.0.0"},
"paths": {
"/users": {
"get": {
"summary": "获取用户列表",
"responses": {
"200": {
"description": "用户列表",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {"type": "integer"},
"name": {"type": "string"}
}
}
}
}
}
}
}
}
}
集成到Express应用
在Express应用中引入Swagger中间件:
const express = require('express');
const swaggerUi = require('swagger-ui-express');
const swaggerDocument = require('./swagger.json');
const app = express();
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
app.listen(3000, () => console.log('Server running on http://localhost:3000'));
启动应用
运行node app.js,访问http://localhost:3000/api-docs即可查看Swagger UI界面。
安装Docker
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker
拉取Swagger UI镜像
docker pull swaggerapi/swagger-ui-express
运行容器
将本地swagger.json文件挂载到容器中:
docker run -p 8080:8080 -v /path/to/swagger.json:/app/swagger.json swaggerapi/swagger-ui-express
访问Swagger UI
浏览器输入http://localhost:8080即可查看。