一套开发阶段简单的cloud项目部署脚本

偷懒之作,在开发阶段比较简单且灵活,以后jenkins什么的可以直接用

先本地构建并集中jar包

mvn-install.bat

@echo mvn start
d:
cd D:\work\IdeaProjects\pig\    //项目目录
mvn clean install -Dmaven.test.skip=true

@echo mvn over

move-jar.bat

复制代码
@echo move start

call mvn-install.bat
echo.
echo.

d:
set newDir=D:\work\jar\up-jar

cd D:\work\IdeaProjects\pig\pig-gateway\target
copy /y *.jar %NewDir%\

cd D:\work\IdeaProjects\pig\pig-service-auth\target
copy /y *.jar %NewDir%\

cd D:\work\IdeaProjects\pig\pig-service-admin\target
copy /y *.jar %NewDir%\

cd D:\work\IdeaProjects\pig\pig-service-sys\target
copy /y *.jar %NewDir%\

@echo move over

pause
复制代码

 

再用scp命令上传服务器,这步也可以放在上面的命令里

@echo upload start
set newDir=D:\work\jar\up-jar

scp %newDir%\*.jar root@192.168.7.193:/opt/java/jar/
@echo upload over

 

服务器上部署脚本

all-deployment.sh

复制代码
#!/bin/bash
PROJECT_NAME=(pig-service-sys pig-service-admin pig-service-auth pig-gateway)
PROJECT_PID=""

IGNORE_SERVICE
="grep\|doc" re_start(){ stop sleep 5 for i in ${PROJECT_NAME[@]}; do echo $i "start begin" nohup java -jar -Xmx256M -Xms125M -Dfile.encoding=utf-8 -Duser.timezone=UTC $i.jar & PROJECT_PID=`ps -ef|grep $i |grep -v grep | awk '{print $2}'` until [ -n "$PROJECT_PID" ] do PROJECT_PID=`ps -ef|grep $i |grep -v grep | awk '{print $2}'` echo waing sleep 1 done echo "start end" sleep 15; echo "start next" done echo "start over" } stop(){ VAL_ONE=`ps -ef|grep pig- |grep -v $IGNORE_SERVICE| awk '{print $2}'` for i in $VAL_ONE;do kill -9 $i;done sleep 3 echo kill all } start(){ stop echo move..... mv /opt/java/jar/pig-*.jar /opt/java/ echo start re_start } read -p "请选择操作: 1-重部署,2-重启,3-停止:" key case $key in 1) start;; 2) re_start;; 3) stop;; *) esac echo 'shell over...'
复制代码

 

上传那步因为每次scp传文件会要输密码,弄个ssh公钥放到服务器上信任,简单记一下

复制代码
本地生成密钥跟公钥,输入名后一直回车,不设密码了
ssh-keygen -t ed33333 -C "your_email@example.com"

#查看公钥内容
cat ~/.ssh/id_ed33333.pub

复制到服务器上的
~/.ssh/authorized_keys
文件里,多个换行就行了
记得给好权限,重新执行上传命令yes之后每次就不用输密码了
复制代码

 

posted @   摩尔迦娜  阅读(114)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示