通用部署②/②
说明
提示
通用部署文档适合技术人员使用。
本系统部署需要启动两个服务,一个用户前台服务,一个管理后台服务。同时对应着两个域名。
环境要求
⚠️ 警告
1.有版本号要求,一定要按文档号来。 2.Postgresql使用1.5,并且一定要安装好向量扩展。
Nginx、Redis、Mysql5.7、Postgresql15(并安装向量扩展)、JDK8.0以上
数据库导入数据
数据库文件在/sql/my.sql,将文件导入Mysql数据库。 数据库文件在/sql/pg.sql,将文件导入Postgresql15数据库。
配置项目
注意
1.注意upload-directory(上传项目)配置的目录在服务器上真实存在,勿漏掉配置后面的"/"符号。 2.记得保存修改的配置文件。
- 步骤1: 复制server/like-admin/src/main/resources/application-dev-example.yml文件为application-dev.yml文件,打开application-dev.yml文件的内容,配置好域名、Mysql、Redis,Postgresql。
- 步骤2: 复制server/like-front/src/main/resources/application-dev-example.yml文件为application-dev.yml文件,application-dev.yml文件的内容,配置好Mysql、Redis,Postgresql。
编译项目
⚠️ 警告
maven版本需要3.6 以上。
- 步骤1: Java项目服务端会启动两个服务,分别对应两一个前台域名和后台域名,我们项目需要授权后台域名。登录官方添加后台域名为授权域名,下载授权文件,将证书改名为my.license,放于server/like-admin/src/main/resources/license目录下,如果为本地测试环境,请联系客服获取。
- 步骤2: 安装好maven,使用cd命令进入server目录,使用mvn命令编译jar包,编译成功好,其中server/like-front/target/like-front-1.0.0.jar为前台jar包,server/like-admin/target/like-admin-1.0.0.jar为后台jar包。
sh
cd server
mvn clean install -Dmaven.test.skip=true
运行项目
使用java命令启动前台服务和后台服务,其中命令可以根据自己实际环境编写,端口参数--server.port也是如此。
sh
java -jar -Xmx1024M -Xms256M server/like-admin/target/like-admin-1.0.0.jar --server.port=8600
java -jar -Xmx1024M -Xms256M -Dfile.encoding=UTF-8 server/like-front/target/like-front-1.0.0.jar --server.port=8700
Nginx配置
在nginx增加以下配置,将①~⑩注释的配置修改为实际环境的配置即可。添加后重启Nginx。然后即可通过域名访问前台和后台。
nginx
server {
listen 80;
listen 443 ssl;
# ①后台域名
server_name www.java-admin.localhost;
# ②https证书
ssl_certificate /ssl/www.java-admin.localhost.crt;
# ③https证书
ssl_certificate_key /ssl/www.java-admin.localhost.key;
# ④日志
access_log /logs/www.java-admin-access.log;
# ⑤日志
error_log /logs/www.java-admin-error.log;
client_max_body_size 5M;
# ⑥后台前端已编译代码
root /public/admin;
location / {
try_files $uri $uri/ /index.html?$query_string;
}
location /api {
# ⑦后台服务地址
proxy_pass http://127.0.0.1:8600;
proxy_set_header Host $Host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
proxy_set_header X-Host $host:$server_port;
proxy_set_header X-Scheme $scheme;
proxy_connect_timeout 30s;
proxy_read_timeout 86400s;
proxy_send_timeout 30s;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
server {
listen 80;
listen 443 ssl;
# ⑧前台域名
server_name www.java-front.localhost;
# ⑨https证书
ssl_certificate /ssl/www.java-front.localhost.crt;
# ⑩https证书
ssl_certificate_key /ssl/www.java-front.localhost.key;
# ⑪日志
access_log /logs/java-front-access.log;
# ⑫日志
error_log /logs/java-front-error.log;
client_max_body_size 5M;
# ⑬前台前端已编译代码
root /public;
location /mobile {
try_files $uri $uri/ /mobile/index.html?$query_string;
}
location /pc {
try_files $uri $uri/ /pc/index.html?$query_string;
}
location /api {
# ⑭后台服务地址
proxy_pass http://127.0.0.1:8700;
proxy_set_header Host $Host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
proxy_set_header X-Host $host:$server_port;
proxy_set_header X-Scheme $scheme;
proxy_connect_timeout 30s;
proxy_read_timeout 86400s;
proxy_send_timeout 30s;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}