美文网首页Awesome DockerDocker容器Python 运维
Docker 实战 (部署jenkins服务)

Docker 实战 (部署jenkins服务)

作者: MR_Hanjc | 来源:发表于2017-11-26 22:21 被阅读71次

    服务器:centos7.4
    docker:1.12.6
    1.下载jenkins镜像,等待镜像下载完成

    [root@localhost ~]# docker pull jenkins
    Using default tag: latest
    Trying to pull repository docker.io/library/jenkins ...
    latest: Pulling from docker.io/library/jenkins
    
    3e17c6eae66c: Pull complete
    fdfb54153de7: Pull complete
    a4ca6e73242a: Pull complete
    93bd198d0a5f: Pull complete
    ca4d78fb08d6: Pull complete
    ad3d1bdcab4b: Pull complete
    4853d1e6d0c1: Pull complete
    49e4624ad45f: Pull complete
    bcbcd4c3ef93: Pull complete
    684fd378d7b5: Pull complete
    022bbe93d4a7: Pull complete
    b81594f168ea: Pull complete
    9d129b450ba7: Pull complete
    4440ce182be6: Pull complete
    6740814fee7d: Pull complete
    569c9d093c48: Pull complete
    3476a17f5aaf: Pull complete
    b5f15cfc5e79: Pull complete
    f09efd2ee9bd: Pull complete
    8e110586720b: Pull complete
    Digest: sha256:f369cdbc48c80535a590ed5e00f4bc209f86c53b715851a3d655b70bb1a67858
    

    2.查看本地镜像

    [root@localhost ~]# docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    docker.io/jenkins   latest              3f08dc4f3f5d        3 weeks ago         808.9 MB
    

    3.创建一个本地jenkins_home

    在home创建一个jenkins_home用于挂载容器中jenkins的数据,来保证数据得持久化

    [root@localhost home]# pwd
    /home
    [root@localhost home]# mkdir jenkins_home
    [root@localhost home]# ls
    centos-ssh-root  hjc  jenkins_home
    

    4.将刚刚创建得jenkins_home赋予操作权限

    这里操作得原因是因为jenkins得容器运行的时候并不是以root来运行,所以不一定有这个目录得操作权限,先查看一下用户得id

    [hjc@localhost root]$ whoami && id
    hjc
    uid=1000(hjc) gid=1000(hjc) 组=1000(hjc),1001(docker) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
    

    在这里可以看到这个用户得id是1000,那么我们就把jenkins_home赋予id=1000这个用户

    [root@localhost home]# chown -R 1000 /home/jenkins_home
    [root@localhost home]# ls -al
    总用量 4
    drwxr-xr-x.  5 root root   60 11月 26 08:55 .
    dr-xr-xr-x. 17 root root  224 11月 18 10:01 ..
    drwxr-xr-x.  2 root root   24 11月 25 20:21 centos-ssh-root
    drwx------. 14 hjc  hjc  4096 11月 18 10:15 hjc
    drwxr-xr-x.  2 hjc  root    6 11月 26 08:55 jenkins_home
    

    可以看到hjc这个用户已经拥有了jenkins_home的权限

    5.创建一个jenkins容器,并且启动这个容器

    [root@localhost home]# docker run -d  -p 8081:8080 -p 50000:50000 -v /home/jenkins_home:/var/jenkins_home --privileged=true --name jenkins jenkins
    3cfe03dd6e319670a3e28a7d09b89e19748b3722a177be24a657aa3c5f66da72
    

    这样我们成功创建了一个容器,并且成功启动了jenkins服务,同时,返回了一个容器得id,查看一下容器得运行状态

    [root@localhost home]# docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                              NAMES
    3cfe03dd6e31        jenkins             "/bin/tini -- /usr/lo"   6 seconds ago       Up 5 seconds        0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp   jenkins
    

    说明:
    docker run :创建并运行一个容器
    -d:以后台得形式运行容器
    -p:将容器得端口挂载到宿主机得端口
    -v:将容器中得数据挂到宿主机得数据卷上,保证数据得持久化
    --privileged:给容器加一个特权,使得运行这个容器得用户可以操作容器中得数据
    --name:指定一个容器得名字

    6.验证,使用宿主机得ip:8081来访问jenkins服务


    这个默认得初始密码我们可以在宿主机得/home/jenkins_home下对应得位置来查看

    [root@localhost jenkins_home]# cat secrets/initialAdminPassword
    133e420087384591bfd10979aaa52a20
    

    在浏览器中输入这个默认得密码就可以开始jenkins服务了~

    相关文章

      网友评论

        本文标题:Docker 实战 (部署jenkins服务)

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