*** 作步骤如下:
1). 在Gitee上创建远程仓库,并将本地的项目代码推送到远程仓库中(IDEA add commit push)
2). 在Linux中安装jdk,mysql(如果要使用linux的MySQL数据的话),Git
java -version
git --version
在想要存放项目代码的地方新建文件夹(文件夹名字为项目名,比如hello)并CD到hello文件夹下,手动克隆代码,如从gitee克隆代码
cd /usr/local/XXX
git clone XXX.git
3). 在Linux中安装maven到/usr/local目录
maven安装包下载地址 Index of /dist/maven/maven-3http://archive.apache.org/dist/maven/maven-3/
将压缩包上传到/usr/local目录
解压缩到该目录
tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local
在/etc/profile配置文件中配置环境变量
vim /etc/profile
修改配置文件,进入到命令模式,按G切换到最后一行,按a/i/o进入插入模式,然后在最后加入如下内容 :
export MAVEN_HOME=/usr/local/apache-maven-3.5.4
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
然后按ESC进入到命令模式,输入 :wq 保存并退出
要想让配置的环境变量生效,还需要执行如下指令:
source /etc/profile
修改maven的settings.xml配置文件,配置本地仓库地址
A. 切换目录
cd /usr/local/apache-maven-3.5.4/conf
B. 编辑settings.xml配置文件
vim settings.xml
在其中增加如下配置,配置本地仓库地址:
/usr/local/repo
并在settings.xml中的
alimaven central aliyun maven http://maven.aliyun.com/nexus/content/groups/public/
=====================================================================
4). 编写Shell脚本(拉取代码、编译、打包、启动)
建个txt,名字和后缀名改为bootStart.sh,输入以下内容。该文件的意思:停止原运行中的项目,从远程仓库拉取最新的项目代码,使用maven打包拉下来的项目,执行项目,并输出日志到target目录下。
#!/bin/sh echo ================================= echo Automated deployment script startup echo ================================= #停止原运行中的项目 echo Stop the original running project APP_NAME=项目名字比如hello项目这里写hello tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'` if [ ${tpid} ]; then echo 'Stop Process...' kill -15 $tpid fi sleep 2 tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'` if [ ${tpid} ]; then echo 'Kill Process!' kill -9 $tpid else echo 'Stop Success!' fi echo Prepare to pull the latest code from GIT #打开项目所在的文件夹 cd /usr/local/项目文件夹比如hello项目这里写hello echo Start pulling the latest code from GIT #本地与远程不同的话,强制更新为远程 git reset --hard #开始从远程拉取 git pull echo Code pull completed #执行打包命令 echo Start packing output=`mvn clean package -Dmaven.test.skip=true` #打开打包之后存放jar包的文件夹 cd target echo Start project #通过nohub方式启动jar包,并输出日志到jar所在文件夹同级别的日志文件 nohup java -jar 项目名字-1.0-SNAPSHOT.jar &> 日志名字.log & echo Project launch completed
修改相关中文标注的地方为具体项目信息。
上传到linux,比如上传到/usr/local/sh
5). 为用户授予执行Shell脚本的权限
上传成功后授权,授权让任何用户都可 读写执行 该sh文件
cd /usr/local/sh
chmod 777 bootStart.sh
6). 执行Shell脚本
cd /usr/local/sh
./bootStart.sh
=================================================================
完成
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)