使用阿里云流水线部署若依java项目项目到自有主机并且支持宝塔面板监管控制 站点
1. 主机宝塔上面新建java项目
这个java项目是若依的源码实例。Fork若依的源码,然后改下数据库配置以及日志目录路径等。保证代码里面的数据库以及日志目录正确。否则部署脚本会失败。因为无法启动项目。
2.配置阿里云流水线源。
选择gitee,然后指定某个分支,可以开启源代码触发,就是在仓库的webhook复制下面地址进去。能够做到代码提交到某个分支,自动触发构建。
3.阿里云流水线构建上传
构建脚本:
mvn -B clean package -Dmaven.test.skip=true -Dautoconfig.skip
构建完毕把构建产物上传到制品仓。注意下构建产品的路径问题。可以上传多个文件以及目录的。
4.流水线主机部署
前提需要添加主机组,如果流水线和主机在同一个账号则不需要在主机安装代理,如果不在或者是其他厂商的主机,需要在主机安装代理。
把制品包下载到服务器的某个路径下面。选择执行用户。然后编写执行脚本。
脚本如下:
echo "开始解压到站点目录";
tar zxvf /home/admin/app/package_ruoyi.tgz -C /www/wwwroot/java1002
echo "解压完毕,准备进入目录";
cd /www/wwwroot/java1002
echo "进入目录,准备杀死旧进程";
kill -9 $(ps -ef|grep ruoyi-admin.jar|grep -v grep|awk '{print $2}')
echo "杀掉旧进程,准备启动新进程";
nohup /usr/bin/java -jar -Xmx1024M -Xms256M /www/wwwroot/java1002/ruoyi-admin.jar --server.port=7540 &
echo "启动完毕,准备copy进程pid到宝塔指定目录,托管给宝塔管理监控";
echo $(ps -ef|grep ruoyi-admin.jar|grep -v grep|awk '{print $2}') > /var/tmp/springboot/vhost/pids/ruoyi-admin.pid
echo "copy到宝塔指定目录ok,恭喜您启动成功!";
echo $(ps -ef|grep ruoyi-admin.jar|grep -v grep|awk '{print $2}') > /var/tmp/springboot/vhost/pids/ruoyi-admin.pid
这个的意思是把启动后的若依的进程的pid放到/var/tmp/springboot/vhost/pids/ruoyi-admin.pid这个目录,因为宝塔面板监的pid取自这个文件。这样启动后宝塔面板就能监控这个项目的状态了。以至于后面可以通过宝塔停止项目。如果是第二次自动化部署的时候,会先根据进程名称杀掉进程,然后启动项目,继续把这个pid写入到指定的那个目录。
版权声明:若无特殊注明,本文皆为《菜鸟站长》原创,转载请保留文章出处。
本文链接:使用阿里云流水线部署若依java项目项目到自有主机并且支持宝塔面板监管控制 站点 - https://wziyi.com.cn/?post=370