代码拉取完成,页面将自动刷新
#!/bin/bash
# 输入一个参数,代表端口
if [ $# -ne 1 ]; then
echo "错误的参数数量,请输入一个参数,代表端口"
exit
fi
echo "修改/usr/lib/systemd/system/jenkins.service"
JENKINS_CONFIG=/usr/lib/systemd/system/jenkins.service
OLD_JAVA_PATH=$(grep 'Environment="JAVA_HOME' ${JENKINS_CONFIG} | awk -F= '{print $3}' | tr -d '"')
NEW_JAVA_PATH=$(which java |sed 's|/bin/java$||')
OLD_PORT=$(grep 'Environment="JENKINS_PORT=' ${JENKINS_CONFIG} | awk -F= '{print $3}' | tr -d '"')
# 自定义端口
NEW_PORT=$1
# 备份配置文件
cp ${JENKINS_CONFIG} ${JENKINS_CONFIG}.bak
echo "修改端口"
sed -i "s|.*Environment=\"JENKINS_PORT=${OLD_PORT}\".*|Environment=\"JENKINS_PORT=${NEW_PORT}\"|g" ${JENKINS_CONFIG}
echo "配置防火墙,删除旧端口,增加新端口"
# 不删除8080端口
if [ "$OLD_PORT" -ne "8080" ]; then
firewall-cmd --permanent --zone=public --remove-port=${OLD_PORT}/tcp
fi
firewall-cmd --permanent --zone=public --add-port=${NEW_PORT}/tcp
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --reload
echo "修改JAVA目录和JAVA_OPT选项"
sed -i "s|.*Environment=\"JAVA_HOME=${OLD_JAVA_PATH}\".*|Environment=\"JAVA_HOME=${NEW_JAVA_PATH}\"|" ${JENKINS_CONFIG}
sed -i "s|.*Environment=\"JAVA_OPTS=.*|Environment=\"JAVA_OPTS=-Djava.awt.headless=true -Dhudson.model.DirectoryBrowserSupport.CSP=\\\\\"default-src \\\x27none\\\x27; script-src \\\x27self\\\x27 \\\x27unsafe-inline\\\x27; style-src \\\x27self\\\x27 \\\x27unsafe-inline\\\x27; img-src \\\x27self\\\x27 \\\x27unsafe-inline\\\x27; data:;\\\\\" -Dhudson.model.DownloadService.noSignatureCheck=true -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true\"|" ${JENKINS_CONFIG}
echo "重启jenkins"
systemctl daemon-reload
systemctl restart jenkins
echo "密码为 $(cat /var/lib/jenkins/secrets/initialAdminPassword)"
echo "端口为 ${NEW_PORT}"
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。