本文章不是具体的教程. 仅仅将重点步骤记录.
直接运行docker
docker run -d -v /root/docker/jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 --name jenkins jenkins/jenkins:lts
报错:
touch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’: Permission denied
Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
宿主机用户是root, /home/docker/jenkins目录的拥有者为root用户,而容器中jenkins user的uid为1000, 所以先将宿主机的目录赋予权限sudo chown -R 1000:1000 /home/docker/jenkins_home
然后再执行命令就可以了:
docker run -d -v /root/docker/jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 --name jenkins jenkins/jenkins:lts
更换源
docker中自带的源因为众所周知的原因访问非常非常慢且不稳定, 所以通过下面的脚本:
- 将原来的源更换为国内的源.
- 将检查网络是否通畅的地址由谷歌换成百度.
$ cd {你的Jenkins工作目录}/updates #进入更新配置位置 这里是/root/docker/jenkins_home
$ sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
登录
从宿主机的/root/docker/jenkins_home/secrets/init***
文件里可以找到初始
配置LDAP
Note: Currently if you specify anything besides ldap for the protocol, you will receive this error. 注:目前,如果您指定的LDAP协议的任何内容,除了对,您将收到此错误。
Error: javax.naming.AuthenticationException: [LDAP: error code 49 - Invalid Credentials] 错误:javax.naming.AuthenticationException:[LDAP的:错误代码49 -无效证书]
Cause: The DN path or password which you have specified for the administrator is invalid. 原因:DN路径或管理员密码,你必须指定为无效。 Any of the below will result in this error:任何下文将导致此错误:
* Pointed to non-user DN指出,非用户的DN
* Pointed to a non-existent user, but in existing DN指出了一个不存在的用户,但在现有的DN
* Pointed to non existent DN指出不存在的DN
* Pointed to an existing user, but non existing DN指出,现有的用户,但现有的DN非
* Pointed to an incorrect admin DN, uid instead of cn指出,一个不正确的管理员的DN,而不是架CN的UID
* Pointed to a non administrator user指着一个非管理员用户
* Pointed to a valid admin but password is incorrect指出了一个有效的管理员密码是不正确的,但
解决
将管理员用户名和密码设置为空.
gitlab集成jenkins
在gitlab中生成deploy token
略
在jenkins中下载gitlab的插件, 可以让gitlab 回调jenkins的那个.
略
配置
注意点:
- 项目配置: 源码管理 => git=> Branches to build 这里如果想匹配会随版本号变化的分支的时候需要写成
:origin/release-\d{8}
这样, 注意最前面的:
- 构建触发器=> 回调选项, 里面可以进行高级配置以指定分支.
网友评论