部署Java项目
原创
©著作权归作者所有:来自51CTO博客作者攻城狮Chova的原创作品,请联系作者获取转载授权,否则将追究法律责任
Java中的项目部署
项目配置
数据库配置
组件配置
- Redis配置: 配置连接地址
- Redis配置端口号
- Redis配置连接密码
日志配置
- 配置日志存放路径
- 注意日志字符集是否添加完整,在encoder标签中
项目上传
前端
- 将前端项目压缩上传至服务器
- 压缩是为了保证项目包含隐藏的文件能够完整地上传至服务器
后端
- 将后端项目压缩上传至服务器
- 压缩是为了保证项目包含隐藏的文件能够完整地上传至服务器
项目打包
前端
- 解压前端项目
- 进入项目文件夹中
- 安装依赖: npm install --unsafe-perm --registry=xxx(依赖地址)
- 项目打包: npm run build:prod
- 生成dist文件夹
后端
jar
- 解压后端项目
- 进入项目文件夹中
- 项目打包: mvn package
- 生成target文件
war
- 修改pom.xml配置: 将打包方式packaging的打包方式改为war
- 在SpringBoot的Tomcat容器依赖中排除掉自带的Tomcat.增加作用域scope限制为provided
public class SpringBootStartApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.source(XxxApplication.class);
}
}
- 清理之前的打包项目target: mvn clean
- 对新的项目进行打包: mvn package
项目部署
前端
- 进入nginx配置文件nginx.conf修改驱动路径:
location / {
root dist所在路径
index index.html index.htm;
}
- 如果使用root账户,需要同时将文件开头的user改为root
- 进入nginx的sbin目录中启动nginx: ./nginx
- 后续更新部署: nginx -s reload
后端
jar
war
- 将打包好的war包拷贝到Tomcat的文件夹webapps中
- 启动Tomcat: service tomcat start
关联
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_heaer X-Forward-For $proxy_add_x_forwarded_for;
proxy_pass 实际后端地址;
}
upstream cluster {
server 实例IP:8080;
server 实例IP:8080;
}
==========================================================================================================================================================
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_heaer X-Forward-For $proxy_add_x_forwarded_for;
proxy_pass 多实例中的upstream地址;
}