在 CentOS 上部署 Swagger 服务,常见有三种方式,取决于你是:
下面按最常用场景给你完整说明。
sudo yum install -y epel-release
sudo yum install -y nginx git
cd /usr/share/nginx/html
sudo git clone https://github.com/swagger-api/swagger-ui.git
编辑:
sudo vi /etc/nginx/conf.d/swagger.conf
内容示例:
server {
listen 80;
server_name swagger.example.com;
location / {
root /usr/share/nginx/html/swagger-ui/dist;
index index.html;
}
}
sudo systemctl enable nginx
sudo systemctl start nginx
http://服务器IP
默认会加载
https://petstore.swagger.io/v2/swagger.json
vi /usr/share/nginx/html/swagger-ui/dist/swagger-initializer.js
修改:
url: "http://你的IP/api/swagger.json"
cp swagger.yaml /usr/share/nginx/html/
访问:
http://IP/swagger.yaml
sudo yum install -y docker
sudo systemctl enable docker
sudo systemctl start docker
docker run -d -p 8080:8080 \
-e SWAGGER_JSON=/foo/swagger.json \
-v /data/swagger.json:/foo/swagger.json \
swaggerapi/swagger-ui
访问:
http://IP:8080
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
访问:
http://IP:端口/swagger-ui.html
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
| 场景 | 推荐方式 |
|---|---|
| 只看文档 | Nginx + Swagger UI |
| 快速部署 | Docker |
| 后端项目 | Spring Boot / Node 集成 |
如果你能告诉我:
我可以给你更精准的一步到位方案。