📄 linux 部署单体版本
内部资料,请刷新扫码登录
pigcloud
特别说明: 开发环境、测试环境强烈建议选择【ECS 按量付费】👉🏻 《阿里云服务器 ECS 按量付费和包年包月有什么区别?》 (opens new window)
自定义购买 | 配置 |
---|---|
付费类型 | 按量付费 |
实例 | 4vCPU/16GiB/Intel 处理器 |
镜像 | CentOS 7.9 64 位 |
系统盘 | 100GB |
公网 IP | 分配 |
带宽计费模式 | 按使用流量 |
带宽峰值 | 100Mbps |
# Linux 环境初始化
此步骤安装 JDK、MYSQL 等完全和微服务版本一致,注意参考相关文档
# 配置 NGINX
vim /etc/nginx/conf.d/pigx-ui.conf
server {
listen 80;
server_name localhost;
gzip on;
gzip_static on; # 需要http_gzip_static_module 模块
gzip_min_length 1k;
gzip_comp_level 4;
gzip_proxied any;
gzip_types text/plain text/xml text/css;
gzip_vary on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
# 前端打包好的dist目录文件
root /data/;
# 若新增后端路由前缀注意在此处添加(|新增)
location ^~/api/ {
proxy_pass http://127.0.0.1:9999/; #注意/后缀
proxy_connect_timeout 60s;
proxy_read_timeout 120s;
proxy_send_timeout 120s;
# 删除 from 头
proxy_set_header from "";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto http;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
}
# 屏蔽所有敏感路径,不用改代码配置开关,双重保护
location ~* ^/(actuator|swagger-ui|v3/api-docs|swagger-resources|webjars|doc.html) {
return 403; # 禁止访问
}
}
# 前端 pigx-ui 构建
npm run build
复制 dist
文件下的资源 上传到 NGINX 配置文件指定的文件目录
# 服务端代码部署
注意打包命令,需要在服务端根目录执行
mvn clean install -Pboot
上传 pigx-boot.jar
到服务器,直接运行即可
nohup java -Xmx4g -Xms4g -XX:+UseG1GC -Dfile.encoding=UTF-8 -jar pigx-boot.jar > /dev/null 2>&1 &
# 安全建议
安全建议
生产条件下关闭 swagger、actuator 端点
- pigx-boot/application.yml
# 配置安全属性:关闭端点、关闭swagger
management:
endpoints:
enabled-by-default: false
springdoc:
api-docs:
enabled: false
# 对外端口、安全组说明
默认情况下,服务器仅对外开放基础的 80/443 nginx 服务端口,nginx 配置按本文的复制!!!
端口号 | 功能 | 生产环境建议 |
---|---|---|
80/443 | 常规访问 | 开放 |
安全问题无小事!部署过程基于 PIGX 服务 2000+企业客户实践总结,网络安全请慎重 请慎重!!