“Swagger 在 Linux 如何迁移”这个问题通常取决于你指的是哪一种 Swagger 使用方式。下面我按最常见的几种场景给你说明,你可以对号入座;如果和你的实际情况不一致,可以再补充。
你原来在 Windows / 另一台 Linux 服务器 上有一套 Swagger API 文档,现在要迁移到新的 Linux 服务器。
swagger.json / swagger.yaml# 如果是 JSON
curl http://localhost:8080/v2/api-docs > swagger.json
# 如果是 YAML(springdoc)
curl http://localhost:8080/v3/api-docs.yaml > swagger.yaml
scp swagger.json user@new-server:/opt/swagger/
cd /opt/swagger
wget https://github.com/swagger-api/swagger-ui/archive/refs/tags/v5.17.14.zip
unzip v5.17.14.zip
修改:
swagger-ui/dist/swagger-initializer.js
url: "http://新服务器IP/swagger.json"
server {
listen 80;
server_name swagger.xxx.com;
location / {
root /opt/swagger/swagger-ui/dist;
index index.html;
}
}
✅ 迁移完成
你要把 Spring Boot 项目连同 Swagger 一起迁移到 Linux
mvn clean package -DskipTests
scp target/app.jar user@linux:/opt/app/
nohup java -jar app.jar > app.log 2>&1 &
http://IP:8080/swagger-ui.html
http://IP:8080/swagger-ui/index.html
✅ Swagger 随项目一起迁移
docker ps
docker pull swaggerapi/swagger-ui
docker run -d -p 8080:8080 \
-e SWAGGER_JSON=/tmp/swagger.json \
-v /opt/swagger:/tmp \
swaggerapi/swagger-ui
如果 Swagger 信息来自数据库(如自定义系统):
✅ 检查:
springfox 是否被 Spring Boot 3 弃用(建议换 springdoc-openapi)✅ 检查:
chmod 644 swagger.json
✅ 后端加:
@CrossOrigin
| 情况 | 建议 |
|---|---|
| 只有 API 文档 | 迁移 swagger.json |
| Spring Boot 项目 | 迁移 jar + 配置文件 |
| 前端展示 Swagger | 迁移 Swagger UI |
| Docker 部署 | 迁移镜像 + 挂载 |
你可以直接告诉我:
我可以给你精确到命令级别的迁移方案。