温馨提示×

如何在linux部署swagger

小樊
45
2026-09-03 13:07:05
栏目: 智能运维

在 Linux 上“部署 Swagger”通常有三种常见场景,我先帮你理清,然后分别给出做法:


一、常见三种“Swagger 部署”方式

  1. Swagger UI(纯前端,查看已有接口文档)
    • 只用来展示 OpenAPI / Swagger JSON
  2. Swagger Editor(在线编辑 OpenAPI 文档)
    • 编写和调试 API 定义
  3. Spring Boot + Swagger(后端自动生成接口文档)
    • 最常见于 Java 项目

下面分别说明。


二、部署 Swagger UI(最常用)

方式 1: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

方式 2:Nginx + 静态文件

wget https://github.com/swagger-api/swagger-ui/archive/refs/heads/master.zip
unzip master.zip
cp -r swagger-ui-master/dist /var/www/swagger

Nginx 配置:

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

    location / {
        root /var/www/swagger;
        index index.html;
    }
}

把你的 swagger.json 放到 dist 目录并修改 index.html 中的 url


三、部署 Swagger Editor

docker run -d -p 8081:8080 swaggerapi/swagger-editor

访问:

http://服务器IP:8081

四、Spring Boot 项目集成 Swagger

1. 添加依赖(Springfox)

<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-swagger2</artifactId>
  <version>3.0.0</version>
</dependency>
<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-swagger-ui</artifactId>
  <version>3.0.0</version>
</dependency>

2. 启用 Swagger

@Configuration
@EnableSwagger2
public class SwaggerConfig {}

3. 访问地址

http://服务器IP:端口/swagger-ui/

五、常见坑提醒

  • Linux 防火墙要放行端口
    firewall-cmd --add-port=8080/tcp --permanent
    firewall-cmd --reload
    
  • 云服务器需开放安全组
  • Swagger JSON 必须是合法 OpenAPI 格式

如果你能告诉我:

  • 用的什么语言(Java / Go / Python)
  • 是否用 Docker
  • 是想“看文档”还是“自动生成文档”

我可以直接给你一套可复制的部署方案

0