在 Linux 上部署 Swagger(通常指 Swagger UI / Swagger Editor / Swagger API 文档),常见有 3 种主流方式。下面按从简单到完整给你讲清楚,并附完整示例。
适用于:
✅ 你已经有 swagger.json / openapi.yaml
✅ 只想在 Linux 上查看 / 共享接口文档
# Ubuntu / Debian
sudo apt update
sudo apt install nginx -y
# CentOS
sudo yum install nginx -y
cd /usr/share/nginx/html
sudo git clone https://github.com/swagger-api/swagger-ui.git
或直接下载:
wget https://github.com/swagger-api/swagger-ui/archive/refs/heads/master.zip
unzip master.zip
mv swagger-ui-master swagger-ui
目录结构:
/usr/share/nginx/html/swagger-ui/dist
编辑:
sudo vim /usr/share/nginx/html/swagger-ui/dist/swagger-initializer.js
修改:
url: "http://your-server-ip:port/v3/api-docs"
或者用本地文件:
url: "/swagger.json"
sudo vim /etc/nginx/sites-enabled/default
示例:
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html/swagger-ui/dist;
index index.html;
}
}
sudo nginx -t
sudo systemctl restart nginx
访问:
http://服务器IP
✅ 完成!
如果你是 Java / Spring Boot 项目:
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.3.0</version>
</dependency>
访问:
http://服务器IP:8080/swagger-ui.html
或:
http://服务器IP:8080/swagger-ui/index.html
✅ 无需额外部署
sudo apt install docker.io -y
sudo systemctl start docker
docker run -d -p 8080:8080 \
-e SWAGGER_JSON=/app/swagger.json \
-v /path/to/swagger.json:/app/swagger.json \
swaggerapi/swagger-ui
访问:
http://服务器IP:8080
docker run -d -p 8081:8080 swaggerapi/swagger-editor
访问:
http://服务器IP:8081
| 名称 | 说明 |
|---|---|
| Swagger | 老品牌 |
| OpenAPI | 新标准 |
| Swagger UI | 展示工具 |
✅ 现在推荐 OpenAPI 3.x
检查:
✅ 内网访问
✅ 加认证(Nginx Basic Auth / Token)
✅ 不要暴露所有接口
你可以直接告诉我:
1️⃣ 是 Spring Boot / Node / Python / Go?
2️⃣ 想 展示已有接口 还是 写接口文档?
3️⃣ 是否用 Docker / 云服务器?
我可以给你 完全贴合你项目的部署方案 ✅