在 Debian 上“加 Swagger”通常指两种情况之一:
下面按常见场景说明。
sudo apt update
sudo apt install -y docker.io
sudo systemctl enable --now docker
docker run -d -p 8080:8080 \
-e SWAGGER_JSON=/foo/swagger.json \
-v /path/to/swagger.json:/foo/swagger.json \
swaggerapi/swagger-ui
访问:
http://<debian-ip>:8080
sudo apt install -y nginx unzip wget
cd /tmp
wget https://github.com/swagger-api/swagger-ui/archive/refs/tags/v5.17.14.zip
unzip v5.17.14.zip
sudo cp -r swagger-ui-5.17.14/dist /var/www/swagger
sudo nano /etc/nginx/sites-enabled/swagger
Nginx 配置示例:
server {
listen 80;
server_name swagger.local;
root /var/www/swagger;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
}
sudo nginx -t
sudo systemctl reload nginx
修改 dist/swagger-initializer.js 中的 url 指向你的 swagger.json。
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.5.0</version>
</dependency>
访问:
http://localhost:8080/swagger-ui.html
npm install swagger-ui-express
const swaggerUi = require('swagger-ui-express');
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
pip install fastapi uvicorn
自带 Swagger:
http://localhost:8000/docs
| 场景 | 推荐方式 |
|---|---|
| 只看 API 文档 | Nginx + Swagger UI |
| 微服务 | Docker |
| 开发联调 | 后端集成 |
| 离线环境 | 静态 dist 部署 |
如果你能告诉我:
我可以直接给你可复制的完整配置。