在Linux系统中安装Swagger,通常是指安装Swagger UI和Swagger Editor。以下是详细的安装步骤:
安装Node.js和npm:
sudo apt update
sudo apt install -y openjdk-11-jre-headless
wget https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz
tar -xvf node-v16.14.0-linux-x64.tar.xz
sudo mv node-v16.14.0-linux-x64 /usr/local/nodejs
echo 'export PATH=/usr/local/nodejs/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
node -v
npm -v
下载并安装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
sudo nano /usr/local/nodejs/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>
sudo a2ensite default.conf
sudo systemctl restart apache2
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.backup
sudo nano /etc/nginx/sites-available/default
修改server
块中的root
和index
指令:server {
listen 80 default_server;
listen [::]: 80 default_server;
root /usr/local/nodejs;
index index.html index.htm;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
保存并退出编辑器,然后重启Nginx:sudo systemctl restart nginx
访问Swagger Editor:
http://your_server_ip/swagger-editor
添加依赖:
pom.xml
文件中添加以下依赖:<dependencies>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
<!-- 其他依赖 -->
</dependencies>
配置Swagger:
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
访问Swagger UI:
http://localhost:8080/swagger-ui.html
通过以上步骤,你可以在Linux系统中成功安装并配置Swagger UI和Swagger Editor。