zoukankan      html  css  js  c++  java
  • docker 安装Jenkins

    查看docker的jenkins镜像版本

    #查看jenkins版本命令
    docker search jenkins
     
    [root@localhost docker]# docker search jenkins
    NAME                                   DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
    jenkins                                Official Jenkins Docker image                   4153                [OK]                
    jenkins/jenkins                        The leading open source automation server       1326                                    
    jenkinsci/jenkins                      Jenkins Continuous Integration and Delivery …   355                                     
    jenkinsci/blueocean                    https://jenkins.io/projects/blueocean           339                                     
    jenkinsci/jnlp-slave                   A Jenkins slave using JNLP to establish conn…   101                                     [OK]
     

    远程拉取镜像

    #拉取镜像命令(不标注表示最新的)
    docker pull jenkins/jenkins
    [root@localhost docker]# docker pull jenkins/jenkins
    Using default tag: latest
    latest: Pulling from library/jenkins
    55cbf04beb70: Pull complete 
    1607093a898c: Pull complete 
    9a8ea045c926: Pull complete 
    d4eee24d4dac: Pull complete 
    c58988e753d7: Pull complete 
    794a04897db9: Pull complete 
    70fcfa476f73: Pull complete

    创建挂载目录

    挂载目录用于映射jenkins的jenkins_home下的配置文件等信息。

    #本文的挂载目录是home下
    mkdir /home/jenkins

    重点:此目录需要设置权限,否则启动容器报错权限错误

    #修改权限(1000:1000 是UID和GID)
    chown -R 1000:1000 /home/jenkins/

    启动容器

    #运用镜像启动容器命令
    docker run -d -p 8000:8080 -p 50000:50000 -v /home/jenkins:/var/jenkins_home --name jenkins --restart always --privileged=true  -u root jenkins/jenkins

    -p : 映射端口,宿主机端口:容器端口

    -v : 挂载,宿主机目录:容器目录

    --name : 自定义容器名

    -u : 权限用户名

    --privileged : 使用该参数,container内的root拥有真正的root权限,否则,container(容器)内的root只是外部的一个普通用户权限,privileged启动的容器可以看到很多host上的设备,并且可以执行mount,甚至允许你在docker容器内启动docker容器。

    未设置privileged参数

    设置privileged参数

     -p 50000:50000 : 如果您在其他机器上设置了一个或多个基于JNLP的Jenkins代理程序,而这些代理程序又与 jenkinsci/blueocean 容器交互(充当“主”Jenkins服务器,或者简称为“Jenkins主”), 则这是必需的。默认情况下,基于JNLP的Jenkins代理通过TCP端口50000与Jenkins主站进行通信。

    修改default.json、hudson.model.UpdateCenter.xml配置文件

    启动容器后,进入刚才设置的挂载目录 /home/jenkins 内,可以看到已经有映射的配置文件了。

    首先修改hudson.model.UpdateCenter.xml配置文件

    复制代码
    默认路径
    
    http://updates.jenkins-ci.org/update-center.json
    
    改成路径
    
    http://mirror.xmission.com/jenkins/updates/update-center.json
    复制代码

    完成后修改 /updates/default.json 配置文件

    默认路径
    "connectionCheckUrl":"http://www.google.com/" 
    改为路径
    "connectionCheckUrl":"http://www.baidu.com/"

    重启jenkins容器

    #重启jenkins容器
    docker restart jenkins

    配置Jenkins,输入http://ip:8000访问Jenkins,提示我们需要输入密码

     因该路径为容器内部的Jenkins路径,因此执行:

    docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

     

    测试

    成功!

  • 相关阅读:
    SQL Service Database BACKUP & RESTORE
    vb.net 写入文件同步锁
    ActiveXObject Word.Application 打印小票
    jquery 计算输入的文本的utf-8字节长度
    sql 随笔 2015-08-07
    Android Calander Event
    Html 全屏切换效果
    C#中ref和out关键字的应用以及区别
    Angular安装、卸载 (高版本会导致component.html页面空白)
    bootstrap导航栏(navbar)下拉框无法展开
  • 原文地址:https://www.cnblogs.com/dvbbs2012/p/14700891.html
Copyright © 2011-2022 走看看