• docker部署jenkins


    步骤一:

    查找jenkins镜像(也可以直接去jenkins官网找镜像docker pull jenkins/jenkins)(官方版本文档https://hub.docker.com/_/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]

    步骤二:

    下载镜像(下载过程可以看到镜像层次,每一层都是新的镜像)

    [root@localhost docker]# docker pull 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 

    步骤三:

    通过镜像创建一个容器运行并可以提供给外部访问

    容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P(大写) 或 -p (小写) 参数来指定端口映射。

    当使用 -P 标记时,Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口。

    -p(小写)则可以指定要映射的IP和端口,但是在一个指定端口上只可以绑定一个容器。支持的格式有 hostPort:containerPortip:hostPort:containerPort、 ip::containerPort

    新建一个目录用于容器内目录挂载映射并修改目录权限,不然后期使用过程中会因为权限报错

    [root@localhost soft]# mkdir jenkins_home
    [root@localhost soft]# ls
    jenkins_home  node
    [root@localhost soft]# chown -R 1000 jenkins_home
    [root@localhost docker]# docker run -dit --name myjenkins -p 8082:8080 -v /usr/local/soft/jenkins_home:/var/jenkins_home jenkins
    bfbcca966a49390a960304e83f47a1d3587ac27bfb7194056c011810306b3766
    [root@localhost docker]# docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
    bfbcca966a49        jenkins             "/bin/tini -- /usr/l…"   6 seconds ago       Up 5 seconds        50000/tcp, 0.0.0.0:8082->8080/tcp   myjenkins

    -p:此处我将本机的8082端口映射到容器的8080端口上(jenkins默认端口8080)

    -v:将容器内的文件夹映射到主机上,前面是主机目录,后面是容器目录

    步骤四:

    从浏览器访问jenkins做相关配置,同我之前的其他jenkins使用教程一样

    访问之后输入这个文件下的内容:

    /var/jenkins_home/secrets/initialAdminPassword

    ps:一开始使用镜像生成并启动容器时我没有-v做目录挂载,遇到了一个很奇怪的问题,每次访问jenkins都会要我输入

    initialAdminPassword文件内容,有时候还会一直在访问jenkins中,做了目录挂载之后,这个问题就没出现过了
  • 相关阅读:
    document.all还是document.getElementsByName
    B/S架构下软件开发技术参考
    "未将对象引用设置到对象的实例"异常的原因,请大家接下去 1、ViewState 对象为Unll。
    爱晚红枫的博客配色绿野仙踪
    适用于.text系统的博客皮肤Nature和purple
    XML数据岛,数据绑定
    【收藏①】17种正则表达式
    如何去除字符串中的多余空格?
    在NTFS分区中复制文件的同时如何复制权限
    我的后大学时代
  • 原文地址:https://www.cnblogs.com/yy-cola/p/10457484.html
Copyright © 2020-2023  润新知