基于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的容器设计成功。