在Linux服務器上部署Swagger主要有兩種方式:使用Docker容器部署和使用傳統的安裝步驟。以下是詳細的步驟:
安裝Docker: 如果你還沒有安裝Docker,首先需要在你的Linux服務器上安裝它??梢允褂靡韵旅顏戆惭bDocker:
sudo apt-get update
sudo apt-get install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker
部署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://<your-server-ip>:8080
來使用Swagger Editor。
部署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://<your-server-ip>:8081
來使用Swagger UI。
安裝Node.js和npm:
sudo apt-get update
sudo apt-get install -y nodejs npm
下載并解壓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
安裝Express:
cd /opt/swagger
npm install express --save
配置并啟動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://<your-server-ip>:3000
來使用Swagger Editor。
部署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/
配置并啟動Web服務器(例如Apache或Nginx):
sudo a2ensite default.conf
sudo systemctl restart apache2
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
sudo nano /etc/nginx/sites-available/default
修改server
塊中的root
和index
指令: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://<your-server-ip>/swagger-ui
來使用Swagger UI。