linux

Swagger在Linux环境下如何实现API文档共享

小樊
41
2025-05-21 12:10:29
栏目: 智能运维

在Linux环境下,可以通过以下步骤使用Swagger实现API文档共享:

  1. 安装Node.js和npm

    首先,需要在Linux系统上安装Node.js和npm。可以通过以下命令进行安装:

    curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
    sudo apt-get install -y nodejs
    node -v
    npm -v
    
  2. 安装Swagger Editor和Swagger UI

    • 下载并解压Swagger Editor和Swagger UI:

      wget https://github.com/swagger-api/swagger-editor/archive/refs/tags/v3.50.0.tar.gz
      tar -xvf swagger-editor-3.50.0.tar.gz
      cd swagger-editor-3.50.0
      wget https://github.com/swagger-api/swagger-ui/archive/refs/tags/v3.50.0.tar.gz
      tar -xvf swagger-ui-3.50.0.tar.gz
      cd swagger-ui-3.50.0
      
    • 启动Swagger Editor和Swagger UI:

      npm install -g http-server
      http-server -p 8080  # 启动Swagger Editor
      http-server -p 8081  # 启动Swagger UI
      

    现在,可以通过浏览器访问 http://your_server_ip:8080 来使用Swagger Editor,访问 http://your_server_ip:8081 来使用Swagger UI。

  3. 集成Swagger到Spring Boot项目(可选)

    如果你使用的是Spring Boot项目,可以集成Swagger来自动生成API文档。添加相关依赖并配置Swagger:

    <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配置类:

    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.EnableSwagger2;
    
    @Configuration
    @EnableSwagger2
    public class SwaggerConfig {
        @Bean
        public Docket api() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .select()
                    .apis(RequestHandlerSelectors.any())
                    .paths(PathSelectors.any())
                    .build();
        }
    }
    

    启动应用程序后,访问 http://localhost:8080/swagger-ui.html 查看Swagger UI。

  4. 远程访问Swagger Editor(可选)

    可以使用Docker和Cpolar来实现Swagger Editor的远程访问:

    • 部署Swagger Editor Docker:

      docker pull swaggerapi/swagger-editor
      docker run -p 8088:8080 -d swaggerapi/swagger-editor
      
    • 使用Cpolar实现远程访问:

      安装Cpolar并配置内网穿透,在Swagger Editor容器中配置公网地址,使用Cpolar生成的公网地址进行远程访问。

通过以上步骤,你可以在Linux系统中成功部署和使用Swagger进行API文档共享。

0
看了该问题的人还看了