first commit

This commit is contained in:
iProbe 2022-10-18 16:59:37 +08:00
commit ba848e218d
1001 changed files with 152333 additions and 0 deletions

View file

@ -0,0 +1,161 @@
#!/bin/bash
## Edit date 2020/04/07
## 说明: 脚本用于更新燕赵项目
## 默认配置文件目录、app存放目录、
## 各模块的tomcat已配置完成且存放在同一目录结构下、
## 使用nginx做代理转发、备份目录存在
# 配置文件存放目录
CONFIG=/home/qianhai/config
# app存放目录包括war包及静态文件包
APP=/home/qianhai/app
# tomcat目录
TOMCAT=/home/qianhai/apache-tomcat-8.5.53
# zookeeper目录
ZOOKEEPER=/home/qianhai/zookeeper-3.4.14
# 静态文件目录
HTML=/usr/local/webserver/nginx/html
# 备份目录
BACKUP=/home/qianhai/backup
# 当前时间
NOW=`date +%Y%m%d-%H%M%S`
# 解压
unpack()
{
source=$1
destination=$2
suffix=`echo $source | awk -F'.' '{print $NF}'`
if [ $suffix == "war" ];then
/usr/bin/unzip $source -d $destination
elif [ $suffix == "tar" ];then
/usr/bin/tar -xf $source -C $destination
fi
}
# 替换配置文件
replace()
{
source=$1
destination=$2
cp -rf $source $destination
}
# 检查zk状态
checkzk()
{
pid=`ps aux | grep zookeeper | grep -v grep | awk '{print $2}'`
if [ -z $pid ];then
$ZOOKEEPER/bin/zkServer.sh start
fi
}
# 备份
backup()
{
app=$1
destination=$2
if [ -f "$BACKUP/$app-$NOW.tar.gz" ];then
rm -rf $BACKUP/$app-$NOW.tar.gz
fi
/usr/bin/tar -zcvf $BACKUP/$app-$NOW.tar.gz $destination/$app
}
# 清理
remove()
{
app=$1
destination=$2
/usr/bin/rm -rf $destination/$app/*
}
# 更新
update()
{
name=$1
destination=$2
app=$3
unpack $APP/$name $destination/$app
}
# 启动应用
startapp()
{
app=$1
destination=$2
pid=`ps aux | grep $app | grep $TOMCAT | grep -v grep | awk '{print $2}'`
if [ -n $pid ];then
/usr/bin/kill -9 $pid >/dev/null 2>&1
fi
$destination/bin/startup.sh
}
echo -e "\033[31;1m++++++Module List++++++\033[0m"
echo -e "\033[32;1m\tc: Core \n\ta: Admin \n\tas: Admin-Static \n\tm: Mvc \n\tms: Mvc-Static \n\tp: Push \n\tq: Quick \t\033[0m"
echo -e "\033[31;1mNotice: Valid Choice - c/a/as/m/ms/p/q\033[0m"
read -p "Choose Module: " module
case $module in
c|C|Core|CORE)
project="core"
package="core.war"
dir=$TOMCAT-$project/webapps
;;
a|A|Admin|ADMIN)
project="admin"
package="admin.war"
dir=$TOMCAT-$project/webapps
;;
as|AS|AdminStatic|ADMINSTATIC|Admin-Static|ADMIN-STATIC)
project="admin-static"
package="admin-static.tar"
dir=$HTML
;;
m|M|Mvc|MVC)
project="mvc"
package="mvc.war"
dir=$TOMCAT-$project/webapps
;;
ms|MS|MvcStatic|MVCSTATIC|Mvc-Static|MVC-STATIC)
project="mvc-static"
package="mvc-static.tar"
dir=$HTML
;;
p|P|Push|PUSH)
project="push"
package="push.war"
dir=$TOMCAT-$project/webapps
;;
q|Q|Quick|QUICK)
project="quick"
package="quick.war"
dir=$TOMCAT-$project/webapps
;;
*)
echo -e "\033[31;5mWrong Input! Please Check! \033[0m"
exit 1
;;
esac
checkzk
if [ $project == "mvc-static" -o $project == "admin-static" ];then
backup $project $dir
remove $project $dir
update $package $dir $project
else
backup $project $dir
remove $project $dir
update $package $dir $project
replace $CONFIG/$project/* $dir/$project/WEB-INF/classes/
startapp $project $dir/..
fi

View file

@ -0,0 +1,222 @@
#!/bin/bash
## Edit date 2020/05/09
## 说明: 脚本用于更新燕赵非车项目
## 默认配置文件目录、app存放目录、
## discovery、config模块基本保持不变、但必须启动且正常运行
## 使用nginx做代理转发、备份目录存在
# 环境
env=prd
# discovery服务访问链接
discovery_host=10.1.139.124
discovery_port=8761
link=http://$discovery_host:$discovery_port/eureka/
# config服务
config_host=10.1.139.124
config_port=8888
# 字符编码
encoding=GBK
# base目录
BASE=/home/qianhai
# 配置文件存放目录
CONFIG=$BASE/config
# app存放目录包括war包及静态文件包
APP=$BASE/app
# 静态文件目录
HTML=/usr/local/webserver/nginx/html
# 备份目录
BACKUP=$BASE/backup
# 当前时间
NOW=`date +%Y%m%d-%H%M%S`
# 一周前
WEEK=`date -d "7 days ago" +%Y%m%d`
# 各模块启动命令
#application-insurance-discovery-server="nohup java -jar application-insurance-discovery-server.jar > /dev/null 2>&1 &"
#application-insurance-config-server="nohup java -jar application-insurance-config-server.jar --spring.cloud.config.server.native.searchLocations=file:$CONFIG --eureka.client.serviceUrl.defaultZone=$link > /dev/null 2>&1 &"
#application-insurance-core-service="nohup java -jar application-insurance-core-service.jar --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &"
#application-insurance-admin-api="nohup java -jar application-insurance-admin-api.jar --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &"
#application-insurance-site-api="nohup java -jar application-insurance-site-api.jar --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &"
#application-insurance-company-trans="nohup java -jar -Dfile.encoding=$encoding application-insurance-company-trans.jar --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &"
#nocar-static=dist.tar.gz
# 备份
backup()
{
module=$1
target=$2
if [ -f "$BACKUP/$module-*.tar.gz" ];then
rm -rf $BACKUP/$module-$WEEK-*.tar.gz
fi
echo -e "\033[33;1mBackup now! \033[0m"
cd $target && /usr/bin/tar -zPcf $BACKUP/$module-$NOW.tar.gz --exclude=logs --exclude=*.log --exclude=*.out *
echo -e "\033[33;1mBackup: $BACKUP/$module-$NOW.tar.gz \033[0m"
}
update()
{
module=$1
target=$2
echo -e "\033[33;1mCopy $module to $target now! \033[0m"
cp -rf $module $target
}
# 解压
unpack()
{
module=$1
target=$2
suffix=`echo $module | awk -F "." '{print $NF}'`
echo -e "\033[33;1munpackage $module to $target now! \033[0m"
if [ $suffix == "war" ] || [ $suffix == "zip" ] || [ $suffix == "jar" ];then
/usr/bin/unzip $module -d $target
elif [ $suffix == "tar" ];then
/usr/bin/tar -xf $module -C $target
elif [ $suffix == "gz" ] || [ $suffix == "tgz" ]; then
/usr/bin/tar -xzf $module -C $target
elif [ $suffix == "bz2" ]; then
/usr/bin/tar -xjf $module -C $target
fi
echo -e "\033[33;1munpackage finish! \033[0m"
}
# 检查discovery
checkdiscovery()
{
pid=`ps aux | grep application-insurance-discovery-server | grep "java -jar" | grep -v grep | awk '{print $2}'`
status=`echo "quit" | telnet $discovery_host $discovery_port 2>&1 | grep "Escape character is"`
if [ -z "$status" ] || [ -z "$pid" ];then
echo -e "\033[32;1mDiscovery not run, start now! \033[0m"
startup application-insurance-discovery-server
fi
}
# 检查config
checkconfig()
{
checkdiscovery
pid=`ps aux | grep application-insurance-config-server | grep "java -jar" | grep -v grep | awk '{print $2}'`
status=`echo "quit" | telnet $config_host $config_port 2>&1 | grep "Escape character is"`
if [ -z "$status" ] || [ -z "$pid" ];then
echo -e "\033[32;1mConfig not run, start now! \033[0m"
startup application-insurance-config-server
fi
}
# 清理
remove()
{
target=$1
echo -e "\033[32;1mRemove $target now! \033[0m"
/usr/bin/rm -rf $target
echo -e "\033[32;1mRemove finish! \033[0m"
}
# 启动
startup()
{
module=$1
pid=`ps aux | grep $module | grep "java -jar" | grep -v grep | awk '{print $2}'`
echo -e "\033[32;1mStop $module now! \033[0m"
if [ -n "$pid" ];then
kill -9 $pid
fi
echo -e "\033[32;1mStop $module finish! \033[0m"
echo -e "\033[32;1mStart $module now! \033[0m"
cd $BASE/`echo $module | awk -F '.' '{print $1}'`
if [ $module == "application-insurance-discovery-server.jar" ];then
echo "nohup java -jar $module > /dev/null 2>&1 &" | bash
echo -e "\033[32;5;1mOther module must be RESTART now! \033[0m"
elif [ $module == "application-insurance-config-server.jar" ];then
checkdiscovery
echo "nohup java -jar $module --spring.cloud.config.server.native.searchLocations=file:$CONFIG --eureka.client.serviceUrl.defaultZone=$link > /dev/null 2>&1 &" | bash
elif [ $module == "application-insurance-core-service.jar" ];then
checkdiscovery
checkconfig
echo "nohup java -jar $module --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &" | bash
elif [ $module == "application-insurance-admin-api.jar" ];then
checkdiscovery
checkconfig
echo "nohup java -jar $module --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &" | bash
elif [ $module == "application-insurance-site-api.jar" ];then
checkdiscovery
checkconfig
echo "nohup java -jar $module --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &" | bash
elif [ $module == "application-insurance-company-trans.jar" ];then
checkdiscovery
checkconfig
echo "nohup java -jar -Dfile.encoding=$encoding $module --spring.profiles.active=$env --eureka.client.serviceUrl.defaultZone=$link >/dev/null 2>&1 &" | bash
fi
}
# 选择需要更新的模块
echo -e "\033[31;1m\t++++++Module List++++++\033[0m"
echo -e "\033[32;1m\ta: application-insurance-discovery-server \n\tb: application-insurance-config-server \n\tc: application-insurance-core-service \n\td: application-insurance-admin-api \n\te: application-insurance-site-api \n\tf: application-insurance-company-trans \n\tg: nocar-static \t\033[0m"
echo -e "\033[31;1m\tNotice: Valid Choice - a/b/c/d/e/f/g\033[0m"
read -p "\tChoose Module: " Choice
case $Choice in
a|A|application-insurance-discovery-server)
project="application-insurance-discovery-server"
package="application-insurance-discovery-server.jar"
;;
b|B|application-insurance-config-server)
project="application-insurance-config-server"
package="application-insurance-config-server.jar"
;;
c|C|application-insurance-core-service)
project="application-insurance-core-service"
package="application-insurance-core-service.jar"
;;
d|D|application-insurance-admin-api)
project="application-insurance-admin-api"
package="application-insurance-admin-api.jar"
;;
e|E|application-insurance-site-api)
project="application-insurance-site-api"
package="application-insurance-site-api.jar"
;;
f|F|application-insurance-company-trans)
project="application-insurance-company-trans"
package="application-insurance-company-trans.jar"
;;
g|G|nocar-static)
project="nocar-static"
package="dist.tar.gz"
;;
*)
echo -e "\033[31;5mWrong Input! Please Check! \033[0m"
exit 1
;;
esac
if [ $project == "nocar-static" ];then
backup $project $HTML/$project
remove $HTML/$project/*
unpack $APP/$package $HTML/$project
else
backup $project $BASE/$project
remove $BASE/$project/$package
update $APP/$package $BASE/$project
startup $package
fi