Debian系统如何部署Swagger UI

538
2025/3/22 21:32:31
栏目: 智能运维
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Debian系统上部署Swagger UI可以通过多种方式实现,以下是使用Docker和Nginx两种常见方法的步骤:

方法一:使用Docker部署Swagger UI

  1. 安装Docker: 如果你还没有安装Docker,请先安装它。可以使用以下命令安装Docker:

    sudo apt update
    sudo apt install docker.io
    
  2. 拉取Swagger UI Docker镜像: 使用以下命令拉取Swagger UI的Docker镜像:

    docker pull swaggerapi/swagger-ui-express
    
  3. 运行Swagger UI容器: 使用以下命令运行Swagger UI容器。你需要指定一个端口映射,以便可以通过浏览器访问Swagger UI:

    docker run -p 8080:8080 swaggerapi/swagger-ui-express
    
  4. 访问Swagger UI: 打开浏览器并访问 http://<your-debian-ip>:8080,你应该能够看到Swagger UI界面。

方法二:使用Nginx部署Swagger UI

  1. 安装Node.js和npm: 如果你还没有安装Node.js和npm,请先安装它们:

    sudo apt update
    sudo apt install nodejs npm
    
  2. 安装Swagger UI Express: 创建一个新的目录并进入该目录,然后使用npm安装Swagger UI Express:

    mkdir swagger-ui-express
    cd swagger-ui-express
    npm init -y
    npm install swagger-ui-express
    
  3. 创建一个简单的Swagger UI Express应用: 创建一个名为 app.js 的文件,并添加以下内容:

    const express = require('express');
    const swaggerUi = require('swagger-ui-express');
    const YAML = require('yamljs');
    
    // Load Swagger document
    const swaggerDocument = YAML.load('./swagger.yaml');
    
    const app = express();
    
    // Serve Swagger docs
    app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
    
    const port = process.env.PORT || 3000;
    app.listen(port, () => {
      console.log(`Server is running on port ${port}`);
    });
    
  4. 创建Swagger文档: 创建一个名为 swagger.yaml 的文件,并添加你的API文档。例如:

    swagger: '2.0'
    info:
      title: Sample API
      description: A sample API to demonstrate Swagger UI
      version: '1.0.0'
    paths:
      /users:
        get:
          summary: List all users
          responses:
            '200':
              description: An array of users
              schema:
                type: array
                items:
                  $ref: '#/definitions/User'
    definitions:
      User:
        type: object
        properties:
          id:
            type: integer
          name:
            type: string
    
  5. 安装Nginx: 如果你还没有安装Nginx,请先安装它:

    sudo apt update
    sudo apt install nginx
    
  6. 配置Nginx: 创建一个新的Nginx配置文件 /etc/nginx/sites-available/swagger-ui,并添加以下内容:

    server {
        listen 80;
        server_name <your-debian-ip>;
    
        location / {
            proxy_pass http://localhost: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;
        }
    }
    
  7. 启用配置: 创建一个符号链接以启用该配置:

    sudo ln -s /etc/nginx/sites-available/swagger-ui /etc/nginx/sites-enabled/
    
  8. 测试Nginx配置: 使用以下命令测试Nginx配置是否正确:

    sudo nginx -t
    
  9. 重启Nginx: 重启Nginx以应用更改:

    sudo systemctl restart nginx
    
  10. 访问Swagger UI: 打开浏览器并访问 http://<your-debian-ip>,你应该能够看到Swagger UI界面。

通过以上两种方法,你可以在Debian系统上成功部署Swagger UI。选择适合你的方法进行部署即可。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Debian域名解析设置步骤是什么