jenkins踩坑之旅

一、解锁jenkins:请到下图红字区域找初始密码填上

2、填好地址就进入第二个页面啦,一般都是admin撒的,填好之后这里有个坑,如你点击,页面会让你输账号,输密码,不管你设的撒密码输入是否准确,jenkins页面都是只有一片空白,这时候

cd /usr/local/tomcat-9.0.20/webapps/jenkins, 

vim config.xml,

都删掉,再重新操作一遍步骤1就好啦,这时候记住直接点击保存并完成,done!

三、下插件,这里有个坑,jenkins中有些插件必须FQ才能获取,这时候去update里面修改个地址可以防止下载插件慢或者中途断掉的问题

cd /usr/local/tomcat-9.0.20/webapps/jenkins/updates

vim default.json 

修改为:

 这个也要改,把https改为http

四、修改admin密码:

一进入jenkins后第一件事是修改admin的密码,

1、点击用户列表,点击admin,点击设置,拉到最下面password,修改好后保存。

2、其实吧作者已经不记得一进去有没有用户列表,如果没有,还有第二方案,进入manage jenkins->manage plugins ,

  • 你的网络条件不差,能FQ:

在这个里面直接下这个插件,这个插件是管理用户的,下载完之后manage jenkins页面会出现,在这里添加用户及分配角色就好了。

  • 你的网络条件不昨的:

走离线,到https://plugins.jenkins.io/下好自行安装

五、构建任务时未看见maven项目,点击manage jenkins-->manage plugins 中的可安装中搜索maven integration plugin,自行下载

六:源码管理选择Git时,输入构建地址报returned status code 128,Access denied

解放方法:点击下面的credential,添加凭据,作者的不支持22端口SSH,只能踩用usrname+password,填好,重新选择问题就解决啦

七、系统全局安全配置中授权策略更改后的问题(好奇心杀死猫系列)

作者之前下载了个gitlab authorization 这个插件,想想用git账户登陆也不错,但设置的时候地址设置错了,导致整个系统就直接挂了,重启后除了用户列表,其它撒也没有,点击右上角登陆也是跳转到一个404页面,OMG。。。。我后悔了

解决方案:仍然进入jenkins的conf.xml文件中,把中的true改为false就可以了,重启进入系统后再把授权策略改回来

 八、

 九、

 十、jenkins构建好的包无法上传至远程服务器,总报无权限,例几项有可能出现的原因:

1、本人最初启动都是用tomcat启动的,没有生成jenkins_user这个文件,只能将jenkins用户加入root用户组,如果有该文件,修改jenkins服务默认使用的用户为root,即将user=jenkins 改为root即可

gpasswd -a root jenkins 

然后设置vim /etc/ssh/sshd_config文件如下图: 之后重启:/etc/init.d/ssh restart

 2、与远程服务器建立公钥第一步:在jenkins服务器/home/zhangsan/.ssh下执行该命令,P后面加引号表示密码为空,之后会在~/.ssh目录下创建两个文件id_rsa(私钥),id_rsa.pub(公钥)ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa


第二步:接下来继续在jenkins服务器上执行 ssh-copy-id -i ~/.ssh/id_rsa.pub <IP>,表示将公钥发给远程服务器的~/.ssh目录下
例:ssh-copy-id -i /home/zhangsan/.ssh/id_rsa.pub 114.114.114.114
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys chmod 0600 ~/.ssh/authorized_keys ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@服务器地址

如以上可直接连上,可忽略第三步
第三步:修改ssh配置
vi /etc/ssh/sshd_config
port 22
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
KeyRegenerationInterval 3600
RSAAuthentication yes
ServerKeyBits 768
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 600
PermitRootLogin yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys
IgnoreRhosts yes
HostbasedAuthentication no
PasswordAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
MaxStartups 20
Subsystem       sftp   /usr/libexec/openssh/sftp-server
修改后保存 /etc/init.d/ssh restart

第四步:更改文件权限
解决问题,根据提示的文件夹位置,修改jenkins服务器与远程服务器对应的文件夹访问权限
chmod go-w ~/
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
注意第一条,如果你的HOME目录被设置为其它用户和组用户可以写,那么即时你更改了 .ssh 目录和authorized_keys
文件也解决不了问题!



十一、构建成功后执行脚本报错
十二、构建时编译失败

 jenkins除了全局装nodejs之外,构建后会生成如上图的文件路径,该路径是前端编译路径,需要在 项目/src/main/webclient这个路径下安装npm,方法:npm install

还有一种更快的方式cnpm,

先安装cnpm:   

npm install -g cnpm --registry= https://registry.npm.taobao.org

再执行:

cnpm install


三十六般武艺,七十二般变化,修练出个人品牌并发出光芒
原文地址:https://www.cnblogs.com/deeptester-vv/p/11365686.html