美文网首页
基于docker安装jenkins配置gitlab自动持续集成

基于docker安装jenkins配置gitlab自动持续集成

作者: 海边的贝壳林 | 来源:发表于2020-01-07 17:50 被阅读0次

    本文章不是具体的教程. 仅仅将重点步骤记录.

    直接运行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中自带的源因为众所周知的原因访问非常非常慢且不稳定, 所以通过下面的脚本:

    1. 将原来的源更换为国内的源.
    2. 将检查网络是否通畅的地址由谷歌换成百度.
    $ 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指出了一个有效的管理员密码是不正确的,但
    

    解决

    将管理员用户名和密码设置为空.

    配置说明: image.png

    gitlab集成jenkins

    在gitlab中生成deploy token

    在jenkins中下载gitlab的插件, 可以让gitlab 回调jenkins的那个.

    配置

    注意点:

    1. 项目配置: 源码管理 => git=> Branches to build 这里如果想匹配会随版本号变化的分支的时候需要写成:origin/release-\d{8}这样, 注意最前面的:
    2. 构建触发器=> 回调选项, 里面可以进行高级配置以指定分支.

    相关文章

      网友评论

          本文标题:基于docker安装jenkins配置gitlab自动持续集成

          本文链接:https://www.haomeiwen.com/subject/voqdactx.html