在Linux系统中部署Swagger(现称为OpenAPI Specification)通常涉及以下几个步骤:
Swagger需要Java运行环境(JRE)或Java开发工具包(JDK)。你可以通过以下命令安装OpenJDK:
sudo apt update
sudo apt install openjdk-11-jdk
验证安装:
java -version
Swagger使用Maven进行构建和依赖管理。你可以通过以下命令安装Maven:
sudo apt install maven
验证安装:
mvn -version
你可以从Swagger的官方GitHub仓库下载Swagger UI项目。以下是下载和解压的步骤:
git clone https://github.com/swagger-api/swagger-ui.git
cd swagger-ui
npm install
使用Maven构建Swagger UI项目:
mvn clean install
将构建好的Swagger UI文件复制到你的Web服务器目录中,例如 /var/www/html
。你可以使用以下命令将文件复制到该目录:
sudo cp -r target/swagger-ui-dist/* /var/www/html/
确保你的Web服务器(如Apache或Nginx)已经启动并运行。以下是配置Apache和Nginx的示例:
/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>
sudo a2ensite swagger.conf
sudo systemctl reload apache2
/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;
}
}
sudo ln -s /etc/nginx/sites-available/swagger /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
启动Apache或Nginx以提供Web服务:
# 对于Apache
sudo systemctl restart apache2
# 对于Nginx
sudo systemctl restart nginx
打开浏览器,访问 http://your_server_ip/swagger-ui
,你应该能够看到Swagger UI的欢迎页面。
如果你需要使用Swagger Editor来编辑和验证API文档,可以按照以下步骤进行:
你可以通过以下命令下载并解压Swagger Editor:
wget https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/3.50.0/swagger-editor.min.js
wget https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/3.50.0/swagger-editor.min.css
创建一个名为 swagger-editor.html
的文件,并添加以下内容:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="swagger-editor.min.css">
</head>
<body>
<div id="swagger-editor"></div>
<script src="swagger-editor.min.js"></script>
<script>
window.onload = function() {
const editor = SwaggerEditor({
url: "https://petstore.swagger.io/v2/api-docs",
dom_id: '#swagger-editor'
});
};
</script>
</body>
</html>
启动Apache或Nginx以提供Web服务,如上面配置所示。
打开浏览器,访问 http://your_server_ip/swagger-editor
,你应该能够看到Swagger Editor的界面。
通过以上步骤,你可以在Linux系统中成功部署Swagger,并提供一个可视化的API文档和编辑界面。