1、先将项目打包好,使用测试的代码
小编是用idea打包的
命令 mvn clean install -P test ???(pom.xml pom文件的路径名?) 如果测试没通过,需要加上 -Dmaven.test.skip=true 命令 mvn clean install -Dmaven.test.skip=true -P test2、创建项目和日志目录
/data/web/webapps/monitor/libs /data/web/webapps/monitor/logs
3、从103 scp脚本到 108
小编操作的环境有多台服务器,so可以用scp命令远程传输文件
把 /usr/local/bin 该目录下的 ctail,server_reload.sh,update.web.sh copy走
/data/web/webapps/bms stop_bms.sh,top_bms_status.sh, bms_daemon.sh copy走
4、使用部署脚本
各个脚本详细记录及概要说明
stop_bms.sh
作用:停止进程脚本
i=`ps aux | grep "office-bms-0.0.1-SNAPSHOT.jar" | grep -v "grep" | wc -l` if [ ${i} -gt 0 ] then echo `date +"%F %T.%3N"`" [Daemon] Stop vlt-office-bms " server_pid=`ps aux | grep "office-bms-0.0.1-SNAPSHOT.jar" | grep -v grep | awk '{print $2}' | paste -d, -s` if [ ${server_pid} -gt 0 ] then echo `date +"%F %T.%3N"`" [Daemon] pid:$server_pid" kill -15 ${server_pid} fi fi替换的地方
把jar包替换成自己的项目的即可
top_bms_status.sh
作用:检查状态脚本
top -p $(ps aux | grep "office-bms-0.0.1-SNAPSHOT.jar" | grep -v grep | awk '{print $2}' | paste -d, -s)替换的地方
把jar包替换成自己的项目的即可
bms_daemon.sh
作用:启动项目脚本
cd /data/web/webapps/bms { count=`ps aux | grep "office-bms-0.0.1-SNAPSHOT.jar" | grep -v "grep" | wc -l` if [ ${count} -lt 1 ] then source /etc/profile echo `date +"%F %T.%3N"`" [Daemon] Start office-bms" /data/jdk1.8.0_65/bin/java -Djava.net.preferIPv4Stack=true -Dfile.encoding=UTF-8 -jar libs/office-bms-0.0.1-SNAPSHOT.jar fi }&替换的地方
第一行的 目录地址 替换成自己的路径,例如 /usr/local/software/monitor
第三行 替换自己的jar包
第八行 替换点1: jdk 路径,启动jar包的路径,例如 /usr/local/software/jdk1.8.0_65/bin
替换点2 : libs/office-bms-0.0.1-SNAPSHOT.jar ---》 替换成自己的jar包路径
5、启动定时器
crontab -e #编辑linux的定时器
*/1 * * * * /data/web/webapps/bms/bms_daemon.sh >> /data/web/webapps/bms/logs/oms.log 2>&1替换成
自己的启动脚本、打印日志的地方
crontab -l #查看linux的定时器
当重新推了jar包需要重启项目
重启脚本
server_reload.sh /data/web/webapps/bms/stop_bms.sh 55
替换成:
server_reload.sh 需要放置全局命令的路径下
stop_bms.sh脚本的位置,和执行的时间 55,表示55秒启动
有些细节未更新,如果有兴趣可以留言,我更新或者相互交流下!