jenkins搭建过程中的一些问题
一 dockers搭建jenkins
因为以前在公司都是直接一个java -jar war包和tomcat搭建jenkins,所以尝试了新的——用docker,网上例子太多,一搜一大把,很快就docker run 起来了。
1)项目访问问题
运行起来之后,就访问 如:localhost/jenkins,去访问,用了nginx 也有一个坑,需要在docker run 的时候配置一个参数,也就是项目访问路径,不然输入随机密码之后直接跳转 localhost/login ,而不是 localhost/jenkins/login, 就登陆不了。
————上述问题解决之后,立马配置各种插件,真的是网上例子多,搜一下就配好了。
补充记录一下 docker run命令 ——docker run -d --name jenkins_9001 -p 9001:8080 --restart=always -e TZ="Asia/Shanghai" -e JENKINS_OPTS="--prefix=/jenkins" -e JENKINS_ARGS="--prefix=/jenkins" -v /etc/localtime:/etc/localtime:ro -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins
2)shell命令执行问题
我的是一个maven项目,所以就用 Publish over SSH 把打包好的jar放到服务器上,最开始用的服务器也就是我docker的宿主机。
用jenkins开始build,在写Publish over SSH相关配置时,写了绝对路径,导致文件没有发过去,其实认真看文章就不会出现我这个问题,还是我抄作业都能抄错,太尴尬了。
最蛋疼的问题来了,我最开始是直接在jenkin里面写的shell命令语句,在执行shell命令时,我 echo $JAVA_HOME,一直都输出的时jenkins的 JAVA_HOME,而不是我服务器的 JAVA_HOME。
后面尝试另一种方式,执行远程服务器的sh文件,结果更不用说——命令和sh文件都是从jenkins上去执行和查找执行。我在想是不是因为我远程的是我宿主机的问题,我换了一个远程服务器。
结果依旧,网上搜索解决手段,无果,放弃。
二 yum 搭建jenkins
docker不行就换一个,这个就直接说结果吧,我找到了半天,没有找到配置项目访问路径的手段,放弃。
三 java -jar 搭建jenkins
都不行,火气上来了,rm -rf *,还好胆小,火气上来也不敢做什么,也就删了一些自己项目的jar包。后面一看 yum搭建jenkins下载了 jenkins.war,心里舒坦了许多。
不多说 java -jar 跑起来。 java -jar 可以加上很多参数,如端口和项目访问路径,绕了一圈,还是得这么弄,我服了。
一路配置完成,这次没问题, ps -ef |grep java,输出的都是远程服务器上的,很好。结果java -jar 我的项目 jar包时,找不到java命令。
什么? ps -ef 都行,你不行?找了半天,发现居然要在 shell 命令语句中配置java 环境,只在/etc/profile配了没用。配配配。完成。
补充一下 java -jar 命令—— nohup java -jar jenkins.war --httpPort=9001 --prefix=/jenkins >jenkins.log 2>&1 &
总的来说,还是直接用tomcat或者 java -jar启动jenkins好,遇到的问题都是一些很基础的问题,也没啥好总结。
docker搭建jenkins遇到问题,不会去解决了,因为不会用docker搭建Jenkins了。