使用jenkins遇到的一些问题

1、tomcat下启动Jenkins失败(用错src包.....):

错误现象:HTTP Status 404 – Not Found

错误原因:

 

25-Jun-2018 02:14:09.731 SEVERE [localhost-startStop-2] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class [jenkins.util.SystemProperties$Listener]

 java.lang.UnsupportedClassVersionError: jenkins/util/SystemProperties$Listener : Unsupported major.minor version 52.0 (unable to load class [jenkins.util.SystemProperties$Listener])

        at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2341)

让jenkins跑在jdk1.8,却实现用jdk1.7构建

项目背景:目前公司内部项目统一用的jdk1.7,但搭建sonarqube平台用的6.7版本必须要求使用jdk1.8及以上。

实现方案:

通过tomcat启动jenkins,在tomcat的bin/start.sh后面追加:

使用jenkins遇到的一些问题_第1张图片

这样的话宿主系统还是用自身默认的jdk版本,而jenkins却已通过jdk1.8启动了,这个时候通过jenkins构建默认的jdk是1.8,如何让其默认是jdk1.7,需在jenkins的系统配置中额外添加JAVA_HOME=/path/jdk1.7即可

 

2、配置邮箱后收不到构建邮件:

报错如下

 

 

Build step '执行 Windows 批处理命令' marked build as failure

Sending e-mails to: 000000000000000000000000000

com.sun.mail.smtp.SMTPSendFailedException: 553 authentication is required

ERROR: 553 authentication is required; nested exception is:

com.sun.mail.smtp.SMTPSenderFailedException: 553 authentication is required

很明显,认证错误,然后问题来了我反复确认用户名和密码都报这个错,让朋友确认也是一样,最后决定检查配置,然后发现了问题,看下图:

使用jenkins遇到的一些问题_第2张图片

 

添加用户名和密码

在邮件通知下 勾选使用SMTP认证复选框,然后填写正确的邮箱地址及密码

3、jenkins一直卡着 显示正在启动,请稍后...(亦有可能是服务器内存不足,稍作等待后再行判断是否需要修改相关配置)

解决方法

[python] view plain copy

  1. [root@jenkins ~]# cd .jenkins/updates/ 到jenkins的工作目录下  
  2. [root@jenkins updates]# vim default.json  
  3. 把 "connectionCheckUrl":"http://www.google.com/" 改为  "connectionCheckUrl":"http://www.baidu.com/"  

 

 

jenkins一直卡着 显示正在启动,请稍后…

解决方法

 

需要你进入jenkins的工作目录,打开

hudson.model.UpdateCenter.xml

http://updates.jenkins-ci.org/update-center.json

改成

http://mirror.xmission.com/jenkins/updates/update-center.json

  •  

 

①、Jenkins问题记录 

https://blog.csdn.net/alittleyatou/article/details/78344117

 

②、【原创】Jenkins 持续集成综合实战 

https://kefeng.wang/2017/01/06/jenkins/

4、504 Gateway Time-out

 

情况一:由于nginx默认的fastcgi进程响应缓冲区太小造成:

  这种情况下导致fastcgi进程被挂起,如果fastcgi服务队这个挂起处理不是很好的话,就可能提示“504 Gateway Time-out”错误。

  情况一解决办法:

  默认的fastcgi进程响应的缓冲区是8K,可以设置大一点,在nginx.conf里,加入:fastcgi_buffers 8 128k

  这表示设置fastcgi缓冲区为8块128k大小的空间。

  情况一解决办法(改进):

  在上述方法修改后,如果还是出现问题,可以继续修改nginx的超时参数,将参数调大一点,如设置为60秒:

  send_timeout 60;

  经过这两个参数的调整,结果没有再提示“504 Gateway Time-out”错误,说明效果还是挺不错的,问题基本解决。

  情况二:PHP环境的配置问题

  这里需要对php-fpm和nginx进行配置修改。因为这种情况下,也会出现“504 Gateway Time-out”错误提示。

  情况二解决办法( php-fpm配置修改):

  将max_children由之前的10改为30,这样操作是为了保证有充足的php-cgi进程可以被使用。

  将request_terminate_timeout由之前的0秒改成60秒,这样使php-cgi进程处理脚本的超时时间提高到60秒,可以防止进程被挂起以提高利用效率。

  情况二解决办法(nginx配置修改):

  为了减少fastcgi的请求次数,尽量维持buffers不变,要更改nginx的几个配置项,如下:

  将fastcgi_buffers由4 64k改为2 256k;

  将fastcgi_buffer_size 由64k改为128k;

  将fastcgi_busy_buffers_size由128k改为256k;

  将fastcgi_temp_file_write_size由128k改成256k。

  情况二解决办法修改完,需要重新加载php-fpm和nginx的配置,然后再进行测试。之后就没有发现“504 Gateway Time-out”错误,效果也还是不错的。

    首次启动会比较占内存且等待时间较长,如果机器性能差就多等一会不要急着修改配置~

5、忘记admin密码~

jenkins 2.10

很多童鞋在使用jenkins的时候忘记密码了,然后各种蛋疼。最近闲着无事,折腾了下。好了,闲话少扯。

 

 

macdeMacBook-Pro:admin mac$ pwd

/Users/mac/.jenkins/users/admin

macdeMacBook-Pro:admin mac$ ll

total 8

drwxr-xr-x  3 mac  staff   102  8  2 15:22 ./

drwxr-xr-x  3 mac  staff   102  6 24 10:02 ../

-rw-r--r--  1 mac  staff  1759  8  2 15:22 config.xml

macdeMacBook-Pro:admin mac$ 

 

Jenkins专有用户的数据存放在JENKINS_HOME/users目录。users目录的结构我就不扯了,你一看就懂。users/xxx(各种用户名) 如上:

 

 

打开忘记密码的用户文件夹,里面就一个文件config.xml。嗯,就是它了。打开config.xml,里面有一堆的东西,找找。。。找到了节点,如图:

节点的内容(图中黑色的那一串)换成#jbcrypt:$2a$10$DdaWzN64JgUtLdvxWIflcuQu2fgrrMSAMabF5TSrGK5nXitqK9ZMS

(注意前后有木有空格)

保存,重启Jenkins程序。

然后输入用户名,密码111111

然后就进去了,然后就没有然后了O(∩_∩)O哈哈~

你可能感兴趣的:(Jenkins)