溫馨提示×

Debian下Swagger與Kubernetes如何集成

小樊
32
2025-06-13 13:14:26
欄目: 智能運維

在Debian系統下集成Swagger與Kubernetes可以通過以下步驟實現:

在Debian系統上安裝Swagger

  1. 更新系統
sudo apt update && sudo apt upgrade -y
  1. 安裝Node.js和npm(如果尚未安裝):
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
  1. 安裝Swagger UI
sudo npm install -g swagger-ui
  1. 啟動Swagger UI
swagger-ui --host localhost:3000

然后,你可以在瀏覽器中訪問 http://localhost:3000 來查看和與Swagger UI交互。

在Spring Boot應用中集成Swagger

  1. 創建Spring Boot項目: 使用Spring Initializr創建一個新的Spring Boot項目,確保包含spring-boot-starter-webspring-boot-starter-security依賴。

  2. 添加Swagger依賴: 在pom.xml文件中添加springfox-boot-starter依賴。

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    <version>3.0.0</version>
</dependency>
  1. 配置Swagger: 創建一個配置類來配置Swagger。
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;

@Configuration
@EnableSwagger2WebMvc
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example"))
                .paths(PathSelectors.any())
                .build();
    }
}
  1. 創建控制器: 創建一個簡單的控制器來測試Swagger。
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/api")
public class HelloController {
    @GetMapping("/hello")
    public String sayHello() {
        return "Hello, Swagger!";
    }
}
  1. 運行項目: 在終端中運行Spring Boot應用程序。
./mvnw spring-boot:run
  1. 訪問Swagger UI: 打開瀏覽器并訪問以下URL:
http://localhost:8080/swagger-ui.html

你應該能夠看到Swagger UI界面,并且可以看到你創建的API文檔。

在Kubernetes中部署Swagger

  1. 部署Swagger UI
apiVersion: apps/v1
kind: Deployment
metadata:
  name: swagger-ui
spec:
  replicas: 1
  selector:
    matchLabels:
      app: swagger-ui
  template:
    metadata:
      labels:
        app: swagger-ui
    spec:
      containers:
      - name: swagger-ui
        image: swaggerapi/swagger-ui:v4.6.0
        ports:
        - containerPort: 8080
  1. 部署Swagger Editor
apiVersion: apps/v1
kind: Deployment
metadata:
  name: swagger-editor
spec:
  replicas: 1
  selector:
    matchLabels:
      app: swagger-editor
  template:
    metadata:
      labels:
        app: swagger-editor
    spec:
      containers:
      - name: swagger-editor
        image: swaggerapi/swagger-editor:v4.6.0
        ports:
        - containerPort: 8080
  1. 訪問Swagger UI: 啟動你的Spring Boot或Spring MVC應用程序后,你可以通過瀏覽器訪問Swagger UI來查看和測試API文檔。
http://your-k8s-node-ip:8080/swagger-ui/index.html

通過以上步驟,你可以在Debian系統下成功集成Swagger與Spring Boot,并通過Kubernetes進行管理和部署。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女