概述
简单分享一个一键部署tomcat脚本,仅供参考。
实用脚本
#!/bin/bash
#################################
# copyright by hwb
# DATE:2020-05-06
#################################
#指定tomcat路径、端口和密码
TOMCAT_PATH=/home
TOMCAT_PORT=(7001 8001 9001)
#调用函数库
[ -f /etc/init.d/functions ] && source /etc/init.d/functions
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
source /etc/profile
#Require root to run this script.
[ $(id -u) -gt 0 ] && echo "请用root用户执行此脚本!" && exit 1
#auto install tomcat
function install_tomcat()
{
echo ""
echo -e "\033[33m*****************************************************自动部署tomcat**************************************************\033[0m"
if [ -f /opt/apache-tomcat-8.5.51.tar.gz ];then
echo "*****存在这个tomcat压缩包,无需下载*****"
else
ping -c 4 app.fslgz.com >/dev/null 2>&1
if [ $? -eq 0 ];then
#wget -c https://downloads.apache.org/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz -O /opt/apache-tomcat-8.5.51.tar.gz
wget https://app.fslgz.com/portal/api/public/fs/association/file/downLoad?uploadId=836557916797468672 -O /opt/apache-tomcat-8.5.51.tar.gz
else
echo "please download tomcat package manual !"
exit $?
fi
fi
tar -zxvf /opt/apache-tomcat-8.5.51.tar.gz -C ${TOMCAT_PATH} &>/dev/null && mv ${TOMCAT_PATH}/apache-tomcat-8.5.51 ${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]} &>/dev/null
# modify tomcat/conf/context.xml
sed -i -r -e '/<\/Context>/i \ <Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" name="jdbc/lcp_db" password="root" type="javax.sql.DataSource" url="jdbc:mysql://xx.xx.xx:3306/lcpdb" username="root"/>' ${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}/conf/context.xml
# modify http_port
sed -i -r -e 's#.*shutdown="SHUTDOWN">.*#<Server port="'${TOMCAT_PORT[0]}'" shutdown="SHUTDOWN">#' ${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}/conf/server.xml
sed -i -r -e 's#.*protocol="HTTP/1.1".*#<Connector port="'${TOMCAT_PORT[1]}'" protocol="HTTP/1.1"#' ${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}/conf/server.xml
sed -i -r -e 's#.*protocol="org.apache.coyote.http11.Http11NioProtocol".*#<Connector port="'${TOMCAT_PORT[1]}'" protocol="org.apache.coyote.http11.Http11NioProtocol"#' ${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}/conf/server.xml
sed -i -r -e 's#.*protocol="AJP/1.3" redirectPort="8443" />.*#<Connector port="'${TOMCAT_PORT[2]}'" protocol="AJP/1.3" redirectPort="8443" />#' ${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}/conf/server.xml
# startup tomcat
${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}/bin/startup.sh &>/dev/null
echo -e "\033[33m*************************************************完成tomcat环境部署**************************************************\033[0m"
cat > /tmp/tomcat.log << EOF
tomcat安装目录:${TOMCAT_PATH}/tomcat${TOMCAT_PORT[1]}
tomcat端口:${TOMCAT_PORT[1]}
tomcat版本:tomcat-8.5.51
EOF
cat /tmp/tomcat.log
echo -e "\e[1;31m 以上信息10秒后消失,保存在/tmp/tomcat.log文件下 \e[0m"
echo -e "\033[33m*********************************************************************************************************************\033[0m"
echo ""
sleep 10
}
install_tomcat
脚本测试
测试结果如下: