温馨提示×

怎样部署debian swagger

小樊
42
2026-09-07 18:15:05
栏目: 智能运维

在 Debian 上“部署 Swagger”通常有几种常见场景,我先按最常见需求给你说明,然后再补充不同用法。


一、最常见:部署 Swagger UI(用于展示已有 OpenAPI 文档)

如果你已经有 Swagger/OpenAPI 的 JSON 或 YAML 文件,只是想在 Debian 上通过浏览器访问。

1. 安装基础环境

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

3. 配置 Nginx

编辑 Nginx 配置:

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

内容示例:

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

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

    location / {
        try_files $uri $uri/ =404;
    }
}

启用配置:

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

4. 修改默认文档(可选)

编辑:

/var/www/swagger-ui/dist/swagger-initializer.js

修改:

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

改成你自己的 API 文档地址。

访问:

http://<服务器IP>

二、Java 项目(Spring Boot + Swagger)

如果你是说 Spring Boot 项目里集成 Swagger

1. 添加依赖(Maven)

<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
  <version>2.3.0</version>
</dependency>

2. 启动后访问

http://<IP>:8080/swagger-ui.html

三、Node.js 项目(Express + Swagger)

npm install swagger-ui-express yamljs
const swaggerUi = require('swagger-ui-express');
const fs = require('fs');
const YAML = require('yamljs');

const swaggerDocument = YAML.load('./swagger.yaml');

app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));

四、Docker 方式(最简单)

docker run -p 8080:8080 \
  -e SWAGGER_JSON=/foo/swagger.json \
  -v $PWD/swagger.json:/foo/swagger.json \
  swaggerapi/swagger-ui

你可以告诉我:

  • Java / Node / Python 项目?
  • 是要 生成文档 还是 只展示文档
  • 是否使用 Docker

我可以直接给你一份可复制粘贴的完整部署方案

0