温馨提示×

debian怎么部署swaggerui

小樊
44
2026-09-22 23:32:04
栏目: 智能运维

在 Debian 上部署 Swagger UI 有多种方式,最常见的是:

  1. 用 Docker 部署(最简单、推荐)
  2. 用 Nginx + 静态文件部署
  3. Node.js / Python 本地服务

下面按使用场景给你几种清晰方案。


一、Docker 方式部署 Swagger UI(推荐)

1. 安装 Docker

sudo apt update
sudo apt install -y docker.io
sudo systemctl enable --now docker

2. 运行 Swagger UI

docker run -d -p 8080:8080 \
  -e SWAGGER_JSON=/foo/swagger.json \
  -v /path/to/swagger.json:/foo/swagger.json \
  --name swagger-ui \
  swaggerapi/swagger-ui

如果你只是想看示例:

docker run -d -p 8080:8080 swaggerapi/swagger-ui

访问:

http://<服务器IP>:8080

✅ 优点:零依赖、升级方便


二、Nginx + 静态文件部署(生产常用)

1. 安装 Nginx

sudo apt update
sudo apt install -y nginx

2. 下载 Swagger UI

cd /var/www
sudo git clone https://github.com/swagger-api/swagger-ui.git
cd swagger-ui
npm install
npm run build

构建完成后:

sudo cp -r dist /var/www/swagger-ui

3. 配置 Nginx

sudo nano /etc/nginx/sites-available/swagger

内容示例:

server {
    listen 80;
    server_name swagger.example.com;

    root /var/www/swagger-ui;
    index index.html;

    location / {
        try_files $uri $uri/ /index.html;
    }
}

启用:

sudo ln -s /etc/nginx/sites-available/swagger /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

三、部署你自己的 API 文档

把你的 swagger.json 放到服务器:

/var/www/swagger-ui/swagger.json

修改:

/var/www/swagger-ui/index.html

找到:

url: "https://petstore.swagger.io/v2/swagger.json",

改为:

url: "/swagger.json",

四、常见问题

1. 端口不通

sudo ufw allow 80
sudo ufw allow 8080

2. 跨域问题

  • API 服务需开启 CORS
  • 或使用 Nginx 反代

3. 只想本地看

python3 -m http.server 8080

五、推荐方案总结

场景 推荐方式
快速测试 Docker
生产环境 Nginx
内部工具 静态文件

如果你愿意,可以告诉我:

  • 是 OpenAPI 2.0 还是 3.0
  • 是否已有 swagger.json
  • 是否要 HTTPS / 域名

我可以直接帮你写完整配置。

0 踩