117.info
人生若只如初见

Swagger在Linux服务器上如何部署

在Linux服务器上部署Swagger主要有两种方式:使用Docker容器部署和使用传统的安装步骤。以下是详细的步骤:

使用Docker容器部署

  1. 安装Docker: 如果你还没有安装Docker,首先需要在你的Linux服务器上安装它。可以使用以下命令来安装Docker:

    sudo apt-get update
    sudo apt-get install -y docker.io
    sudo systemctl start docker
    sudo systemctl enable docker
    
  2. 部署Swagger Editor: 拉取Swagger Editor的Docker镜像:

    docker pull swaggerapi/swagger-editor:v4.6.0
    

    运行Swagger Editor容器,并将容器的8080端口映射到宿主机的8080端口:

    docker run -d -p 8080:8080 swaggerapi/swagger-editor:v4.6.0
    

    现在,你可以在浏览器中访问http://:8080来使用Swagger Editor。

  3. 部署Swagger UI: 拉取Swagger UI的Docker镜像:

    docker pull swaggerapi/swagger-ui:v4.15.5
    

    运行Swagger UI容器,并将容器的8080端口映射到宿主机的8081端口:

    docker run -d -p 8081:8080 swaggerapi/swagger-ui:v4.15.5
    

    在浏览器中访问http://:8081来使用Swagger UI。

使用传统的安装步骤

  1. 安装Node.js和npm

    sudo apt-get update
    sudo apt-get install -y nodejs npm
    
  2. 下载并解压Swagger Editor

    mkdir -p /opt/swagger
    cd /opt/swagger
    wget https://github.com/swagger-api/swagger-editor/archive/refs/tags/v3.16.1.tar.gz
    tar -xvf v3.16.1.tar.gz
    rm v3.16.1.tar.gz
    
  3. 安装Express

    cd /opt/swagger
    npm install express --save
    
  4. 配置并启动Swagger Editor: 创建一个index.js文件:

    vi index.js
    

    添加以下内容:

    var express = require('express');
    var app = express();
    app.use('/swagger', express.static('public'));
    app.get('/', function (req, res) {
        res.send('Hello World');
    });
    var server = app.listen(3000, function () {
        var host = server.address().address;
        var port = server.address().port;
        console.log("应用实例,访问地址为 http://%s:%s", host, port);
    });
    

    启动服务器:

    node index.js
    

    在浏览器中访问http://:3000来使用Swagger Editor。

  5. 部署Swagger UI: 下载Swagger UI:

    wget https://github.com/swagger-api/swagger-ui/archive/refs/tags/v3.48.0.tar.gz
    

    解压Swagger UI:

    tar -xvf v3.48.0.tar.gz
    rm v3.48.0.tar.gz
    

    将解压后的文件复制到Web服务目录(例如/var/www/html):

    sudo cp -r swagger-ui-3.48.0/* /var/www/html/
    
  6. 配置并启动Web服务器(例如Apache或Nginx):

    • Apache
      sudo a2ensite default.conf
      sudo systemctl restart apache2
      
    • Nginx
      sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
      sudo nano /etc/nginx/sites-available/default
      
      修改server块中的rootindex指令:
      server {
          listen 80;
          server_name localhost;
          root /var/www/html;
          index index.html index.htm;
          location / {
              try_files $uri $uri/ /index.html;
          }
      }
      
      保存并退出编辑器,然后重启Nginx:
      sudo systemctl restart nginx
      

现在,你应该能够通过浏览器访问http:///swagger-ui来使用Swagger UI。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fee36AzsNAAZWAV0.html

推荐文章

  • Linux FileZilla如何设置断点续传

    虽然 FileZilla 本身不支持断点续传功能,但你可以通过使用 rsync 命令来实现这一需求。以下是具体步骤: 打开终端(Terminal)。
    使用以下命令模板,将源文...

  • Linux文件重命名方法:如何轻松修改文件名

    在Linux中,有多种方法可以用来重命名文件。以下是一些常用的命令:
    1. 使用 mv 命令
    mv 命令不仅可以移动文件,还可以用来重命名文件。
    mv oldf...

  • Yum命令报错怎么办

    当你在使用Yum命令时遇到错误,可以尝试以下方法来解决问题: 检查网络连接:确保你的计算机已连接到互联网,因为Yum需要从远程仓库下载软件包。 更新Yum缓存:运...

  • 如何用grep命令高效搜索日志

    使用grep命令高效搜索日志的方法有很多,以下是一些建议: 使用管道(pipe):将其他命令的输出作为grep的输入,这样可以避免创建大量临时文件。例如,如果你想从...

  • Debian syslog故障排查方法

    在Debian系统中,Syslog(System Logging Service)是一个用于记录和管理系统日志的服务。Syslog的主要作用包括监控和故障排除、系统性能跟踪、安全审计以及遵守...

  • centos软连接恢复技巧

    在CentOS系统中,软链接(也称为符号链接)是一个指向另一个文件或目录的特殊类型的文件。如果软链接的源文件被删除或移动,软链接就会失效。以下是一些恢复Cent...

  • debian gcc如何使用调试器

    在Debian系统上使用GCC编译器时,可以结合GDB(GNU调试器)来调试程序。以下是使用GCC和GDB进行调试的基本步骤: 编译程序:
    使用GCC编译你的C或C++程序时,...

  • GitLab在Debian上的插件如何管理和使用

    GitLab是一个开源的代码托管平台,提供了完整的代码管理和协作功能,适用于团队开发和个人使用。要在Debian系统上安装和管理GitLab插件,可以按照以下步骤进行:...