Linux创建Jenkins启动脚本以及开机启动服务
1、jenkins.sh
#!/bin/bash ###主要目的用于开机启动服务,不然 启动jenkins.war包没有java -jar的权限 JAVA_HOME=/usr/lib/jdk1.8.0 pid=`ps -ef | grep jenkins.war | grep -v 'grep'| awk '{print $2}'| wc -l` if [ "$1" = "start" ];then if [ $pid -gt 0 ];then echo 'jenkins is running...' else ### java启动服务 配置java安装根路径,和启动war包存的根路径 nohup $JAVA_HOME/bin/java -jar /usr/lib/jenkins/jenkins.war --httpPort=8080 2>&1 & fi elif [ "$1" = "stop" ];then exec ps -ef | grep jenkins | grep -v grep | awk '{print $2}'| xargs kill -9 echo 'jenkins is stop..' else echo "Please input like this:"./jenkins.sh start" or "./jenkins stop"" fi
根据自己的java安装目录,和jenkins.war包存放目录来修改脚本,我的脚本放在/usr/local/src/jenkins/目录下
#启动jenkins
/usr/lib/jenkins/jenkins.sh start
#停止jenkins
/usr/lib/jenkins/jenkins.sh stop
注意:运行时遇到/bin/bash^M: 坏的解释器:没有那个文件或目录
原因:sh在Windows 下编辑过,在Windows下每一行结尾是\n\r,而Linux下则是\n,所以才会有 多出来的\r;
使用指令sed -i 's/\r$//' xxxxxxx.sh
,上面的指令会把 sh 中的\r 替换成空白!
2、给jenkins.sh文件授权
命令:chmod +x /usr/lib/jenkins/jenkins.sh
3、在/etc/rc.d/rc.local文件底部,添加内容:
1 # jenkins 2 /usr/lib/jenkins/jenkins.sh start
4、重启计算机
命令:reboot