背景

  在CentOS搭建Docker完成后,我们需要在Docker中搭建Jenkins用来实现工程自动部署。

安装前提

  • jdk已安装,安装目录如:usr/java/jdk1.8.0_161
  • maven已安装,安装目录如:usr/maven/apache-maven-3.5.2
  • 设置Jenkins挂载目录(重要!!!)
    • 创建一个目录作为Jenkins挂载目录,比如,mkdir -p /home/jingguoliang/jenkins
    • 设置此目录的归属用户ID:chown -R 1000:1000 "/home/jingguoliang/jenkins/"

步骤

  • 下载相应的jenkins镜像文件

    • 运行Docker服务:systemctl start docker.service
    • 搜索下载量大于10的相关镜像:docker search -s 10 "jenkins",如下图,我们选择第一个官方Jenkins Docker 镜像

    • 下载镜像:docker pull "docker.io/jenkins",等待下载。
    • PS:在下载过程中不可以断网,如果断网则需要重新下载镜像。具体步骤如下
      • 重启docker:systemctl restart docker.service
      • 重新搜索镜像
      • 重新下载镜像
    • 查看Docker镜像,如下图,则成功。

  • 创建Jenkins容器
    • 创造并运行容器:docker run -itd -p 8090:8080 -p 50000:50000 --name jenkins --privileged=true  -v /home/jingguoliang/jenkins:/var/jenkins_home -v /usr/java/jdk1.8.0_161:/usr/java/jdk1.8.0_161 -v /usr/maven/apache-maven-3.5.2:/usr/maven/apache-maven-3.5.2 docker.io/jenkins

      • -p 8090:8080 -p 50000:50000:进行端口映射,比如127.0.0.1:8090就可以访问Jenkins
      • --name jenkins:容器名称
      • --privileged=true:在CentOS7中的安全模块selinux把权限禁掉了,参数给容器加特权,如果不加此参数会有权限问题
      • -v /home/jingguoliang/jenkins:/var/jenkins_home -v /usr/java/jdk1.8.0_161:/usr/java/jdk1.8.0_161 -v /usr/maven/apache-maven-3.5.2:/usr/maven/apache-maven-3.5.2:磁盘挂载
      • docker.io/jenkins:镜像名称
    • 查看正在运行的容器:docker ps,如下图

  • 访问Jenkins,如图
    • 访问地址

      • 本地访问:http://loalhost:8090/
      • 局域网访问,ip+8090

    • 获取登录密码

      • 方式一:在jenkins启动的时候,我们设置了文件夹的挂在,所以我们直接可以在本地jenkins目录下查看密码:cat  /home/jingguoliang/jenkins/secrets/initialAdminPassword,返回的值就是密码
      • 方式二:进入容器内部获取密码
        • 进入容器:docker exec -it "容器ID" bash,如图

        • 查找文件:cat  /var/jenkins_home/secrets/initialAdminPassword,如下图,返回的值就是密码

    • 登录即可。

CentOS7下Docker中构建Jenkins容器的更多相关文章

  1. CentOS7下Docker中构建可以自动发布到项目的Tomcat容器

    步骤 下载镜像 搜索相应的镜像文件:docker search 'tomcat' 如下 下载镜像:docker pull tomcat:7,如下图 PS:后面的数字代表tomcat的版本,可以自己选择 ...

  2. 将自己的SpringBoot应用打包发布到Linux下Docker中

    目录 将自己的SpringBoot应用打包发布到Linux下Docker中 1. 环境介绍 2. 开始前的准备 2.1 开启docker远程连接 2.2 新建SpringBoot项目 3. 开始构建我 ...

  3. centos7下docker的安装教程

    Centos7下docker安装教程以及踩过的那些坑 推荐在Centos下安装docker,在windows下安装docker可能会遇到很多的问题,而且docker官方推荐使用linux环境来使用do ...

  4. 【Devops】【docker】【CI/CD】docker启动的Jenkins容器 - 系统管理 - 全局工具配置 - 自动安装JDK、Maven、Git、Docker

    本篇适用于jenkins是启动的docker容器,自动安装JDK  Maven  Git   Docker等全局工具 ========================================= ...

  5. 在docker中运行jenkins实现代码自动发布到测试服务器

    在docker中运行jenkins 用的镜像是apline版:lts-alpine,并设置正确的时区. docker run --name jenkins_master -d \ -p 8081:80 ...

  6. Docker中完成Jenkins的安装

    去年就开始学习采用Docker+Jenkins+.Net Core搭建生成式流水线,一直拖到现在,也没有彻底的好好静下来去总结总结.趁着现在对自己的严格要求下,逐渐开始重视自我总结,以此来巩固逐渐失去 ...

  7. CentOS7下Docker的安装与使用

    前言 简介 Docker 是一个开源的应用容器引擎,基于 Go 语言,并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到 ...

  8. CentOS7 下Docker最新入门教程 超级详细 (安装以及简单的使用)

    转载https://blog.csdn.net/wzsy_ll/article/details/82866627 1.为什么使用Docker(本人) 最近总是频繁的在新服务器发布项目, 每次发布都需要 ...

  9. centos7下docker 部署javaweb

    LXC linux container 百度百科:http://baike.baidu.com/link?url=w_Xy56MN9infb0hfYObib4PlXm-PW02hzTlCLLb1W2d ...

随机推荐

  1. sqli-labs(十七)

    第五十四关: 这关大概意思就是尝试次数不能多于十次,必须十次之类查询处特点的key. 第一次:输入单引号报错 第二次:输入双引号不报错 说明后台是单引号进行的拼凑 第三步:这里应该是判断列,用orde ...

  2. activiti 项目变更控制器

    package com.xinwei.process.controller; import java.util.Calendar; import java.util.HashMap; import j ...

  3. 删除SQL Server大容量日志的方法(转)

    删除SQL Server大容量日志的方法 亲自实践的方法 1.分享数据库,如果提示被其他连接占用,不能分离,刚勾上drop connections 2.复制下所有文件,一定要备份好,以防自己操作失误 ...

  4. memory consistency

    目前的计算机系统中,都是shared memory结构,提供统一的控制接口给软件, shared memory结构中,为了memory correctness,可以将问题分为:memory consi ...

  5. 四 js Math数学简单使用

    //Math是全局的 //Math.PI 数学里的3.1415926.... console.log(Math.PI); //取随机数 //js提供的随机函数 Math.random() --> ...

  6. ling join 报错The specified LINQ expression contains references to queries that are associated with different cont

    The specified LINQ expression contains references to queries that are associated with different cont ...

  7. Xfire基础

    XFire 是与Axis 2并列的新一代Web Service框架,通过提供简单的API支持Web Service各项标准协议,能够快速地开发Web Service应用.和其他Web服务引擎相比,XF ...

  8. 浅谈大数据与hadoop家族

    按照时间的早晚从大数据出现之前的时代讲到现在.暂时按一个城市来比喻吧,反正Landscape的意思也大概是”风景“的意思. 早在大数据概念出现以前就存在了各种各样的关于数学.统计学.算法.编程语言的研 ...

  9. linux监控性能和网络的命令

    vmstat查看机器实时的综合情况:load,内存,swap,cpu使用率等方面 procs: r:运行队列中进程数量 b:等待IO的进程数量 memory(内存): swpd:使用虚拟内存大小 fr ...

  10. Linux基础命令---切换用户su

    su 临时切换身份到另外一个用户,使用su切换用户之后,不会改变当前的工作目录,但是会改变一些环境变量. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUS ...