在 Debian 上“更新 Swagger”通常指下面几种情况之一,我分别说明,你对照自己的场景操作即可。
Debian 官方仓库一般没有 swagger 的官方包,所以大多数情况不是 apt 安装的。
先确认:
dpkg -l | grep -i swagger
如果没有输出,说明不是 deb 包安装的,看下面二、三。
最常见方式(推荐)。
docker pull swaggerapi/swagger-ui
docker stop swagger-ui
docker rm swagger-ui
docker run -d -p 8080:8080 --name swagger-ui swaggerapi/swagger-ui
docker pull swaggerapi/swagger-editor
docker stop swagger-editor
docker rm swagger-editor
docker run -d -p 8081:8080 --sname swagger-editor swaggerapi/swagger-editor
如果是 Node 项目:
npm update swagger-ui-dist
# 或
npm install swagger-ui-dist@latest
如果是 Spring Boot(后端):
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>最新版本</version>
</dependency>
或 SpringDoc(推荐新项目):
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.x.x</version>
</dependency>
然后重新构建项目。
cd /var/www/swagger
rm -rf *
wget https://github.com/swagger-api/swagger-ui/archive/refs/heads/master.zip
unzip master.zip
cp -r swagger-ui-master/dist/* .
不需要更新 Swagger 本身,只替换:
/etc/swagger/api.yaml
或你 Nginx / 项目里指定的文件即可。
如果你能告诉我:
我可以给你精确的一条命令更新方案。