温馨提示×

debian如何部署swagger

小樊
40
2026-09-16 21:14:17
栏目: 智能运维

在 Debian 上“部署 Swagger”通常有两种常见场景,下面分别说明,你可以按需要选择。


一、部署 Swagger UI(最常用)

适用场景:你已经有 OpenAPI / Swagger JSON/YAML 文件,想在浏览器中查看和调试接口。

1. 安装 Nginx

sudo apt update
sudo apt install nginx -y

2. 下载 Swagger UI

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

或只下载静态文件:

sudo mkdir -p /var/www/swagger-ui
cd /var/www/swagger-ui
sudo wget https://github.com/swagger-api/swagger-ui/archive/refs/heads/master.zip
sudo apt install unzip -y
sudo unzip master.zip

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/ /index.html;
    }
}

启用配置:

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://your-api.com/swagger.json"

二、在 Java / Spring Boot 项目中使用 Swagger

适用场景:后端是 Spring Boot。

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

三、使用 Docker 部署 Swagger UI(推荐)

最简单、最干净的方式。

sudo apt install docker.io -y
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://服务器IP:8080

四、常见问题

  • 端口被占用:修改 Nginx 或 Docker 端口
  • 跨域问题:后端需允许 CORS
  • HTTPS:用 Nginx + Let’s Encrypt

如果你能告诉我:

  • 前端静态文档 还是 后端自动生成
  • 使用什么语言(Java / Go / Python / Node)

我可以给你更精确的部署方案。

0