基于docker+jenkins+git构建ci/cd(1)之jenkins容器的构建与启动

Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。

移除旧的版本:

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

 添加软件源信息:

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装 Docker-ce:

sudo yum -y install docker-ce

 制作支持docker的jenkins镜像,基础镜像是jenkins:2.60.3 

FROM jenkins/jenkins:lts
USER root
RUN apt-get update \
      && apt-get install -y sudo \
      && rm -rf /var/lib/apt/lists/*
RUN echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoers

USER jenkins
COPY plugins.txt /usr/share/jenkins/plugins.txt
RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt

该Dockerfile的意义是安装sudo命令并且在jenkins用户下,使用sudo无需密码,并安装相应的插件包

然后调用docker build -t dxd/jenkins .命令调用Dockerfile构建jenkins镜像

调用命令启动jenkins容器

docker run -d -p 8080:8080 -p 50000:50000 --name jenkins --restart=always \
-v /opt/dockerWorkspace/jenkins_home:/var/jenkins_home \
-v $(which docker):/usr/bin/docker \ 
-v /var/run/docker.sock:/var/run/docker.sock  tomsun28/jenkins:1.1
#通过挂载的形式将docker命令共享至jenkins容器中,那么在构建的时候jenkins 就可以使用docker命令进行构建

使用docker ps 查看正在运行的容器

映射的端口跟我们自己设置的一样现在输入宿主机ip+8080 就可以进入jenkins页面呢

 

 这样jenkins的容器设计成功。

posted @ 2019-04-02 13:07  {Dxd}  阅读(431)  评论(0编辑  收藏  举报