温馨提示×

linux swagger能离线吗

小樊
47
2026-10-21 03:46:04
栏目: 智能运维

可以的,Swagger 在 Linux 上完全可以离线使用。下面按常见场景说明:


一、Swagger UI 离线(最常用)

Swagger UI 本质是一套静态前端文件(HTML + JS + CSS),不需要联网。

方式 1:下载离线包

wget https://github.com/swagger-api/swagger-ui/archive/refs/tags/v5.x.x.tar.gz
tar -zxvf v5.x.x.tar.gz

然后:

  • 把 dist/ 目录放到 Nginx / Apache
  • 修改 swagger-initializer.js 中的 URL 为本地 JSON
server {
    listen 80;
    root /opt/swagger-ui/dist;
    index index.html;
}

✅ 完全离线访问


二、Swagger Editor 离线

Swagger Editor 也有离线版:

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

或下载静态版直接部署在 Linux 本地。


三、Spring Boot + springdoc-openapi(Java 项目)

如果你指的是 接口文档自动生成:

  • springdoc-openapi 默认生成 JSON
  • UI 可打包进 jar
  • 不依赖外网
springdoc:
  api-docs:
    enabled: true
  swagger-ui:
    enabled: true

只要:

  • 不引用外网 CDN
  • 使用内置 UI

就是完全离线


四、需要注意的“假离线”问题

以下情况会“看起来不能离线”:

  • Swagger UI 引用了:
    https://cdn.jsdelivr.net/...
    
  • 浏览器自动拉取在线资源

✅ 解决办法:使用官方 dist 离线包


五、总结

场景 是否可离线
Swagger UI ✅ 可
Swagger Editor ✅ 可
Spring Boot 文档 ✅ 可
在线 demo 站点 ❌ 不可

如果你能说明:

  • 用的是 Swagger UI / Editor / Spring Boot
  • 是否是 Docker / Nginx / 裸机

我可以给你一份具体可复制的离线部署方案。

0 踩