Docker中完成Jenkins的安装

Posted ckexp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker中完成Jenkins的安装相关的知识,希望对你有一定的参考价值。

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

  本文地址:https://www.cnblogs.com/CKExp/p/9536864.html 

 

一、安装Docker

  这里可以参考之前写过的一篇文章:https://www.cnblogs.com/CKExp/p/8159269.html 内容比较简单,但还算是能够实用,安装的Docker版本是1.13.1,服务器版本是CentOS7.2。

 

二、安装Jenkins

  先说明一下,在Jenkins安装时,我们需要在里面配置号Docker Compose组件,以此来支撑我们在后面同时发布多个网站或服务。有关docker compose知识可以参见https://yeasy.gitbooks.io/docker_practice/content/swarm/

  所以我们不直接拉取Jenkins镜像,通过Dockerfile的形式来拉取Jenkins镜像,并在容器内安装好Docker Compose组件。而不单独在宿主机上安装Docker Compose,尽管那样也没问题,只需将应用程序直接部署到宿主机上就行,但是就失去了我们想要设计成流水线的目的了。

  先创建一个Jenkins文件夹并编写Dockerfile文件:

1 # cd /
2 # mkdir Jenkins
3 # cd Jenkins
4 # touch Dockerfile
5 # vim Dockerfile

  Dockerfile文件内容:

FROM jenkins
USER root

#更新源并安装libltdl7
RUN apt-get update && apt-get install -y libltdl7
ARG dockerGid=999
RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group 

# 安装 Docker-Compose
RUN curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-‘uname -s‘-‘uname -m‘ -o /usr/local/bin/docker-compose
# 授权
RUN chmod +x /usr/local/bin/docker-compose

  开始构建该镜像

# docker build . -t myjenkinsimage

  等待一会终于可以了,注意一下,如果在安装Docker-Compose时提示出错了,请看一下对应路径中 ‘uname -s‘-‘uname -m‘ 是否是这样写的,直接安装Docker Compose的写法是$(uname -s)-$(uname -m)。

技术分享图片

   先来配置一个存放jenkins配置信息的文件夹并修改文件夹权限,该文件夹名是在Jenkins容器中对应的Jenkins_home文件夹,所以我们也最好直接取上这个名字即可。

# mkdir -p /var/jenkins_home
# chown -R 1000 /var/jenkins_home

  开始运行一个以Jenkins为镜像的容器并挂载Docker套接字,以便能在容器里与Docker守护进程互动,指明Jenkins数据挂载到宿主机位置和设置容器名称,基础镜像名称等。

# docker run -d --name JenkinsContainer -p 8080:8080 -p 50000:50000     -v /var/run/docker.sock:/var/run/docker.sock     -v $(which docker):/bin/docker     -v /var/jenkins_home :/var/jenkins_home     myjenkinsimage

   启动成功,容器已经创建完毕

技术分享图片

  

 三、配置Jenkins

  现在Jenkins容器已经正常运行了,可以通过ip:port去访问并配置。首次访问后将看到这个界面,配置密码。

  技术分享图片

  需要从容器里面查看一下密码,以交互状态进入容器并查看对应路径下文件密码。

# docker exec -it JenkinsContainer /bin/bash
# cat /var/jenkins_home/secrets/initialAdminPassword

   得到密码,继续下面的配置步骤,选择推荐安装的插件,然后等待安装完成。

 技术分享图片

技术分享图片

  安装完毕,开始设置用户账号信息,设置完毕,进入界面,整个Jenkins安装且配置也就全部结束了。

技术分享图片

接下来将开始设置Asp.Net Core应用程序的Dockerfile及Docker Compose实现生成式流水线的搭建,同时感谢@Loongle的文章,少走许多弯路。

本文地址:https://www.cnblogs.com/CKExp/p/9536864.html 

 

2018-08-31,望技术有成后能回来看见自己的脚步

 



以上是关于Docker中完成Jenkins的安装的主要内容,如果未能解决你的问题,请参考以下文章

Docker安装Jenkins打包Maven项目为Docker镜像并运行保姆级图文教学

Jenkins自动部署

在容器中运行Jenkins部署主机中的docker应用

在容器中运行Jenkins部署主机中的docker应用

在容器中运行Jenkins部署主机中的docker应用

使用docker安装Jenkins