温馨提示×

linux swagger怎么配置

小樊
56
2026-09-06 17:49:01
栏目: 智能运维

在 Linux 环境下配置 Swagger,通常取决于你使用的技术栈(Java/Spring、Node.js、Python 等)。下面我按最常见场景给你说明,并给出通用步骤,你可以按需选择。


一、Spring Boot + Swagger(最常用)

1. 环境前提

  • Linux 已安装 JDK(推荐 JDK 8/11/17)
  • 已安装 Maven 或 Gradle
  • Spring Boot 项目

2. 引入依赖

Swagger 2(旧版)

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.9.2</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.9.2</version>
</dependency>

Swagger 3(推荐,Spring Boot 2.6+)

<dependency>
    <groupId>org.springdoc</groupId>
    <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
    <version>2.3.0</version>
</dependency>

3. 配置 Swagger

Swagger 2 配置类

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

Swagger 3(无需配置类)

访问:

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

4. 启动项目

mvn spring-boot:run

浏览器访问:

http://服务器IP:8080/swagger-ui.html

二、Node.js (Express) + Swagger

1. 安装

npm install swagger-ui-express yamljs

2. 使用

const express = require('express');
const swaggerUi = require('swagger-ui-express');
const YAML = require('yamljs');

const swaggerDocument = YAML.load('./swagger.yaml');
const app = express();

app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));

app.listen(3000);

访问:

http://localhost:3000/api-docs

三、Python (Flask / FastAPI)

FastAPI(内置 Swagger)

pip install fastapi uvicorn
from fastapi import FastAPI

app = FastAPI()

@app.get("/items")
def read_items():
    return [{"name": "item"}]

启动:

uvicorn main:app --host 0.0.0.0 --port 8000

访问:

http://服务器IP:8000/docs

四、Linux 服务器注意点

✅ 防火墙

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

✅ 云服务器安全组

  • 放行对应端口(8080 / 3000 / 8000)

✅ 绑定 0.0.0.0

--host 0.0.0.0

五、如果你愿意,我可以更精确地帮你

你可以告诉我:

  1. 用的什么语言/框架?
  2. Swagger 2 还是 3?
  3. 是本地 Linux 还是云服务器?

我可以直接给你可复制的配置文件。

0 踩