部署Java项目

项目配置

数据库配置

  • 数据库连接配置
  • 数据库表创建

组件配置

  • Redis配置: 配置连接地址
  • Redis配置端口号
  • Redis配置连接密码

日志配置

  • 配置日志存放路径
  • 注意日志字符集是否添加完整,在encoder标签中

项目上传

前端

  • 将前端项目压缩上传至服务器
  • 压缩是为了保证项目包含隐藏的文件能够完整地上传至服务器

后端

  • 将后端项目压缩上传至服务器
  • 压缩是为了保证项目包含隐藏的文件能够完整地上传至服务器

项目打包

前端

  • 解压前端项目
  • 进入项目文件夹中
  • 安装依赖: npm install --unsafe-perm --registry=xxx(依赖地址)
  • 项目打包: npm run build:prod
  • 生成dist文件夹

后端

jar
  • 解压后端项目
  • 进入项目文件夹中
  • 项目打包: mvn package
  • 生成target文件
war
  • 将项目使用外置的Tomcat部署
    • 修改pom.xml配置: 将打包方式packaging的打包方式改为war
    • SpringBootTomcat容器依赖中排除掉自带的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
  • 进入nginxsbin目录中启动nginx: ./nginx
  • 后续更新部署: nginx -s reload

后端

jar
  • 启动jar项目
war
  • 将打包好的war包拷贝到Tomcat的文件夹webapps
  • 启动Tomcat: service tomcat start

关联

  • 在nginx配置增加配置关联前后端:
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地址;
}

猜你喜欢

转载自blog.csdn.net/JewaveOxford/article/details/107134708