首页主机资讯Swagger在Debian上的部署工具有哪些

Swagger在Debian上的部署工具有哪些

时间2025-11-07 14:42:04发布访客分类主机资讯浏览1214
导读:Swagger在Debian上的常见部署工具及方法 1. Docker(快速部署Swagger UI) Docker是Debian上部署Swagger UI的高效工具,通过官方镜像实现一键部署,无需手动配置环境。 操作步骤: ① 安装Do...

Swagger在Debian上的常见部署工具及方法

1. Docker(快速部署Swagger UI)

Docker是Debian上部署Swagger UI的高效工具,通过官方镜像实现一键部署,无需手动配置环境。

  • 操作步骤
    ① 安装Docker:sudo apt update & & sudo apt install docker.io
    ② 拉取Swagger UI镜像:docker pull swaggerapi/swagger-ui
    ③ 运行容器并映射端口(如8080):docker run -p 8080:8080 -d swaggerapi/swagger-ui
    ④ 访问界面:浏览器打开http://your-debian-ip:8080即可查看Swagger UI。

2. Node.js + Swagger UI Express(自定义静态部署)

通过Node.js的swagger-ui-express模块,将Swagger UI作为静态资源部署,适合需要自定义界面的场景。

  • 操作步骤
    ① 安装Node.js和npm:sudo apt install nodejs npm
    ② 全局安装swagger-ui-expresssudo npm install -g swagger-ui-express
    ③ 准备Swagger文档(如swagger.yaml);
    ④ 创建Express应用(app.js),使用swagger-ui-express中间件关联Swagger文档:
    const express = require('express');
        
    const swaggerUi = require('swagger-ui-express');
        
    const YAML = require('yamljs');
        
    const app = express();
        
    const swaggerDocument = YAML.load('./swagger.yaml');
        
    app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
        
    app.listen(3000, () =>
         console.log('Server running on port 3000'));
        
    
    ⑤ 启动应用:node app.js,访问http://localhost:3000/api-docs查看Swagger UI。

3. Spring Boot(集成Swagger生成API文档)

若项目基于Spring Boot,可通过springfox-swagger2springfox-swagger-ui依赖,自动生成并集成Swagger UI,适合Java生态项目。

  • 操作步骤
    ① 安装Java和Maven:sudo apt install openjdk-11-jdk maven
    ② 在pom.xml中添加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配置类(启用Swagger并配置扫描路径):
    import org.springframework.context.annotation.Bean;
        
    import org.springframework.context.annotation.Configuration;
        
    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();
    
        }
    
    }
    
    
    ④ 打包项目:mvn clean install
    ⑤ 部署JAR文件到Debian服务器:java -jar target/your-app.jar
    ⑥ 访问Swagger UI:http://your-server-ip:8080/swagger-ui.html

4. Nginx(反向代理与静态资源托管)

Nginx可作为反向代理服务器,将Swagger UI部署在子路径(如/swagger-ui),提升访问安全性和灵活性。

  • 操作步骤
    ① 安装Nginx:sudo apt install nginx
    ② 配置Nginx(编辑/etc/nginx/sites-available/default),添加反向代理规则:
    server {
        
        listen 80;
        
        server_name your_domain.com;
    
        location /swagger-ui/ {
        
            proxy_pass http://localhost:3000/;
         # 假设Swagger UI运行在3000端口
            proxy_http_version 1.1;
        
            proxy_set_header Upgrade $http_upgrade;
        
            proxy_set_header Connection 'upgrade';
        
            proxy_set_header Host $host;
        
            proxy_cache_bypass $http_upgrade;
    
        }
    
    }
        
    
    ③ 启用配置并重启Nginx:sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled & & sudo systemctl restart nginx
    ④ 访问Swagger UI:http://your_domain.com/swagger-ui/

以上工具覆盖了Debian上Swagger的主要部署场景,可根据项目需求(如语言生态、自定义需求、运维便捷性)选择合适的方式。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Swagger在Debian上的部署工具有哪些
本文地址: https://pptw.com/jishu/745122.html
Debian中Swagger如何处理跨域请求 Debian系统中Swagger如何进行单元测试

游客 回复需填写必要信息