linux

Linux下Swagger配置步骤是什么

小樊
43
2025-04-07 02:39:26
栏目: 智能运维

在Linux下配置Swagger主要包括安装Swagger UI和Swagger Editor,以及配置Web服务器。以下是详细的步骤:

安装Java环境

Swagger需要Java运行环境(JRE)或Java开发工具包(JDK)。你可以通过以下命令安装OpenJDK:

sudo apt update
sudo apt install openjdk-11-jdk

验证安装:

java -version

安装Maven

Swagger使用Maven进行构建和依赖管理。你可以通过以下命令安装Maven:

sudo apt install maven

验证安装:

mvn -version

克隆Swagger项目

你可以从Swagger的官方GitHub仓库克隆Swagger Core项目:

git clone https://github.com/swagger-api/swagger-core.git
cd swagger-core

构建Swagger Core

使用Maven构建Swagger Core项目:

mvn clean install

配置Swagger UI

  1. 下载并解压Swagger UI
wget https://repo1.maven.org/maven2/io/springfox/springfox-swagger-ui/2.9.2/springfox-swagger-ui-2.9.2.zip
unzip springfox-swagger-ui-2.9.2.zip
  1. 移动解压后的文件到Web服务目录(例如 /var/www/html):
sudo mv springfox-swagger-ui-2.9.2 /var/www/html/swagger-ui
  1. 配置Swagger UI

编辑 /var/www/html/swagger-ui/index.html 文件,找到以下行并进行修改:

<script>
  window.onload = function() {
    // Begin Swagger UI call region
    const ui = SwaggerUIBundle({
      url: "http://petstore.swagger.io/v2/api-docs",
      dom_id: '#swagger-ui',
      deepLinking: true,
      presets: [
        SwaggerUIBundle.presets.apis,
        SwaggerUIStandalonePreset
      ],
      plugins: [
        SwaggerUIBundle.plugins.DownloadUrl
      ],
      layout: "StandaloneLayout"
    });
    // End Swagger UI call region
    window.ui = ui;
  };
</script>

配置Web服务器

使用Apache

  1. 创建虚拟主机配置文件
sudo nano /etc/apache2/sites-available/swagger.conf

添加以下内容:

<VirtualHost *:80>
  ServerName localhost
  DocumentRoot /var/www/html
  Directory /var/www/html
  Options Indexes FollowSymLinks AllowOverride All Require all granted
</VirtualHost>
  1. 启用该虚拟主机
sudo a2ensite swagger.conf
sudo systemctl reload apache2

使用Nginx

  1. 创建服务器块配置文件
sudo nano /etc/nginx/sites-available/swagger

添加以下内容:

server {
  listen 80;
  server_name localhost;
  root /var/www/html;
  index index.html index.htm;
  location / {
    try_files $uri $uri/ /index.html;
  }
}
  1. 启用该服务器块
sudo ln -s /etc/nginx/sites-available/swagger /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

启动Web服务器

根据你使用的Web服务器(Apache或Nginx),启动相应的服务:

sudo systemctl restart apache2
sudo systemctl restart nginx

访问Swagger UI

现在,你应该能够通过浏览器访问以下URL来查看和使用Swagger UI:

请注意,上述步骤中的URL和文件路径可能需要根据你的实际环境进行调整。

0
看了该问题的人还看了