温馨提示×

linux swagger怎样迁移

小樊
35
2026-08-31 16:24:54
栏目: 智能运维

在 Linux 环境下迁移 Swagger(通常指 Swagger UI / Swagger Editor / Swagger 相关配置),一般有三种常见场景。下面我按最常见情况给你一个清晰、可操作的迁移方案,你可以对照自己的实际情况调整。


一、常见迁移场景判断

场景 说明
✅ 场景 1 迁移 Swagger API 文档(yaml / json)
✅ 场景 2 迁移 Swagger UI / Editor 部署环境
✅ 场景 3 迁移 基于 Spring Boot + Swagger 的后端服务

二、场景 1:仅迁移 Swagger API 文档(最常见)

1️⃣ 找到 Swagger 文档路径

常见位置:

/api-docs
/swagger/v1/swagger.json
/v2/api-docs
/v3/api-docs

或本地文件:

/swagger/api.yaml
/swagger/swagger.json

2️⃣ 拷贝文档到新服务器

scp swagger.json user@new-server:/opt/swagger/

3️⃣ 在新服务器部署 Swagger UI

方法 A:使用 Docker(推荐)

docker run -d \
  -p 8080:8080 \
  -e SWAGGER_JSON=/app/swagger.json \
  -v /opt/swagger:/app \
  swaggerapi/swagger-ui

访问:

http://新服务器IP:8080

方法 B:使用 Nginx

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

    location / {
        root /opt/swagger-ui;
        index index.html;
    }

    location /swagger.json {
        alias /opt/swagger/swagger.json;
    }
}

三、场景 2:迁移 Swagger UI / Editor 应用

1️⃣ 备份原目录

tar -czvf swagger-ui.tar.gz /opt/swagger-ui

2️⃣ 拷贝到新服务器

scp swagger-ui.tar.gz user@new-server:/opt/

3️⃣ 解压并运行

tar -xzvf swagger-ui.tar.gz
cd /opt/swagger-ui

如果是 Node 项目:

npm install
npm run start

四、场景 3:Spring Boot + Swagger 迁移

1️⃣ 迁移代码与配置

拷贝:

src/
pom.xml / build.gradle
application.yml

2️⃣ 确认 Swagger 依赖

✅ Swagger 2(旧)

<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-boot-starter</artifactId>
  <version>3.0.0</version>
</dependency>

✅ SpringDoc OpenAPI(推荐)

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

3️⃣ 修改配置文件

springdoc:
  api-docs:
    path: /api-docs
  swagger-ui:
    path: /swagger-ui.html

4️⃣ 在新服务器启动

java -jar app.jar

访问:

http://新服务器IP:8080/swagger-ui.html

五、数据库 / 权限 / 环境检查清单 ✅

迁移后重点检查:

  • /etc/hosts 或域名解析
  • ✅ 防火墙 / 安全组端口(8080、80、443)
  • ✅ Swagger 中的 hostservers 地址
  • ✅ API 实际接口是否能访问
  • ✅ 鉴权(Token / OAuth2)

六、快速迁移示例(最常用)

# 1. 拷贝 swagger.json
scp swagger.json root@new-server:/opt/swagger/

# 2. 启动 Swagger UI
docker run -d -p 8080:8080 \
  -e SWAGGER_JSON=/app/swagger.json \
  -v /opt/swagger:/app \
  swaggerapi/swagger-ui

七、如果你愿意,我可以帮你更精确

你可以直接告诉我:

  1. 你用的是 Swagger 2 还是 OpenAPI 3
  2. Docker / 裸机 / Nginx
  3. 是否涉及 Spring Boot / Node / Java
  4. 迁移的是 文档、UI 还是整个服务

我可以给你精确到命令级别的迁移方案

0