Linux部署Java项目

Linux部署Java项目步骤:

核心步骤:

1.阿里云centos_8_0服务器准备,安全组设置

2.Linux下jdk、maven、git安装配置

3.添加SSH公钥从GitHub(gitee)克隆源代码

4.Linux下安装docker

5.docker下安装mysql

6.git拉取项目代码

7.执行项目中的sql数据库脚本

8.修改项目配置文件并启动


环境部署

准备工作:

阿里云

新建目录

#tmp存放临时安装包
mkdir -p /data/tmp
#service存放软件环境
mkdir -p /data/service
#gitee存放代码版本控制库
mkdir -p /data/gitee

JDK >= 1.8

​ 从Oracle官网下载1.8版本最新版JDK,通过工具上传到服务器上,接着解压和配置环境变量

#进入安装包目录,解压
cd /data/tmp
tar -zxvf jdk-8u261-linux-x64.tar.gz

#把解压出来的文件夹转移到统一的地方
mv /data/tmp/jdk1.8.0_261 /data/service/jdk1.8.0_261

#修改环境变量/etc/profile,JAVA_HOME修改为自己的jdk路径
vim /etc/profile
export JAVA_HOME=/data/service/jdk1.8.0_261
export PATH=$PATH:$JAVA_HOME/bin

#使环境变量生效
source /etc/profile

#检查是否配置成功
java _version

Maven >= 3.0

​ 从Maven官网下载最新版的压缩包,进行解压和配置环境变量

#进入安装包目录,解压
tar -zxvf apache-maven-3.6.3-bin.tar.gz

#修改环境变量/etc/profile, MAVEN_HOME修改为自己的maven路径
export MAVEN_HOME=/data/service/maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

#使环境变量生效
source /etc/profile

#检查是否配置成功
mvn -v

Git

#通过yum安装
yum -y install git

#检查是否配置成功
git -version
ssh-keygen-t rsa -C "xx@xx.com"
cat ~/.ssh/id_rsa.pub

Mysql >= 5.5.0(5.5.7)

​ 使用docker的方式安装mysql,首先安装docker

#卸载旧版本
sudo yum remove docker \
		docker-client \
		docker-client-latest \
		docker-common \ 
		docker-latest \
		docker-latest-logrotate \
		docker-logrotate \
		docker-engine
#安装 Docker Engine-Community
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli
containerd.io
sudo systemctl start docker
yum install
https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-
1.2.6-3.3.fc30.x86_64.rpm
#查看可用的mysql版本
docker search mysql
#拉去5.7版本
docker pull mysql5.7
#创建配置文件目录
mkdir -p /data/docker/mysql/conf
#进入配置文件目录,添加一个配置文件
vim my.cnf

[mysqld]
character-set-server=utf8
#进入docker容器设置env LANG=C.UTF-8
docker exec -it mysql env LANG=C.UTF-8 bash

项目部署

步骤部署

​ 1、从git仓库clone下来最新代码

#创建git仓库目录,clone项目源代码
mkdir -p /data/gitee
cd /data/gitee
git clone xxx.git(以ruoyi项目为例)
#复制需要执行的sql文件到docker的映射目录中
cp /data/gitee/RuoYi/sql/quartz.sql /data/docker/mysql/conf/
cp /data/gitee/RuoYi/sql/ry_20200911.sql /data/docker/mysql/conf/

#进入docker容器中,执行sql文件
docker exec -it mysql env LANG=C.UTF-8 bash
#连接mysql
mysql -uroot -p
#创建数据库ruoyi
create database if not exists ruoyi character set='utf8'
#进入数据库,执行文件
use ruoyi;
source /etc/mysql/conf.d/quartz.sql;
source /etc/mysql/conf.d/ry_20200911.sql;
cd /data/gitee/Ruoyi/ruoyi-admin/src/main/resources/
#修改application.yml的启动项目端口号
vim application.yml
#修改application-druid.yml的数据源
vim application-druid.yml
server:
port:18081

ruoyi:
profile:/data/tmp
#数据源配置
spring:
	datasource:
		type:
com.alibaba.druid.pool.DruidDataSource
	driverClassName:com.mysql.cj.jdbc.Driver
	druid:
		#主库数据源
		master:
			url:jdbc:mysql://localhost:3306/ruoyi?useUnicode=true&characterEncoding=utf8&
			zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
			username:root
			password:123456
cd /data/gitee/RuoYi/
mvn install

启动项目:把jar复制到程序目录,通过java命令行的方式启动jar包文件。由于本项目是spring boot项目,所以jar中内置了web容器,不需要额外安装tomcat了。

mkdir -p /data/app/ruoyi-admin
cp /data/gitee/RuoYi/ruoyi-admin/target/ruoyi-admin.jar
/data/app/ruoyi-admin/ruoyi-admin.jar
cd /data/app/ruoyi-admin/
nohup java -jar ruoyi-admin.jar &
上一篇:为什么在若依官网选择了下载地址后,idea还是下载不了? 告诉你如何在idea部署若依.git


下一篇:使用Docker容器部署RuoYi-Vue前后端分离项目