温馨提示×

Linux如何启动Swagger服务

小樊
45
2026-07-10 13:19:14
栏目: 智能运维

在 Linux 上“启动 Swagger 服务”通常有几种常见含义,下面按最常见场景逐一说明,你可以对照自己的情况选择。


一、如果你指的是 启动 Swagger UI(查看接口文档)

✅ 方式 1:用 Docker 启动 Swagger UI(最简单 ✅)

docker run -p 8080:8080 -e SWAGGER_JSON=/swagger.json \
  -v $(pwd):/usr/share/nginx/html \
  swaggerapi/swagger-ui

访问:

http://localhost:8080

如果你已经有 swagger.jsonopenapi.yaml

docker run -p 8080:8080 \
  -e SWAGGER_JSON=/docs/openapi.yaml \
  -v /path/to/docs:/usr/share/nginx/html \
  swaggerapi/swagger-ui

✅ 方式 2:直接运行 Swagger UI(Node.js)

git clone https://github.com/swagger-api/swagger-ui.git
cd swagger-ui
npm install
npm run dev

访问:

http://localhost:3200

二、如果你指的是 Spring Boot 项目启动 Swagger

1️⃣ 添加依赖(Maven)

<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-boot-starter</artifactId>
  <version>3.0.0</version>
</dependency>

2️⃣ 启动类或配置类

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.OAS_30)
                .select()
                .apis(RequestHandlerSelectors.any())
                .paths(PathSelectors.any())
                .build();
    }
}

3️⃣ 启动项目

java -jar your-app.jar

访问:

http://localhost:8080/swagger-ui/index.html

三、如果你指的是 Node.js / Express 项目

安装

npm install swagger-ui-express swagger-jsdoc

示例代码

const express = require('express');
const swaggerJsdoc = require('swagger-jsdoc');
const swaggerUi = require('swagger-ui-express');

const app = express();

const spec = swaggerJsdoc({
  definition: {
    openapi: '3.0.0',
    info: { title: 'API', version: '1.0.0' }
  },
  apis: ['./index.js']
});

app.use('/docs', swaggerUi.serve, swaggerUi.setup(spec));

app.listen(3000);

访问:

http://localhost:3000/docs

四、如果你指的是 Swagger Editor(编辑 API)

docker run -p 8081:8080 swaggerapi/swagger-editor

访问:

http://localhost:8081

五、常见问题

❓ 端口被占用

netstat -tunlp | grep 8080
kill -9 <pid>

❓ 防火墙

firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload

✅ 总结(快速选择)

需求 推荐方式
只看接口文档 Docker Swagger UI
Spring Boot springfox / springdoc
Node.js swagger-ui-express
编辑 OpenAPI Swagger Editor

如果你能告诉我:

  • ✅ 是 Spring Boot / Node / Python / Go
  • ✅ 想 查看文档 还是 生成文档

我可以给你精确到命令级别的教程。

0