Docker学习(3)构建Jenkins和Docker服务器

来源:互联网 发布:迪优美特c6网络盒子 编辑:程序博客网 时间:2024/06/03 23:31

一、简介

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。


二、构建Jenkins和Docker服务器

1.mkdir -p jenkins && cd jenkins

2.vim Dockerfile,内容:

#书本上的执行起来貌似有问题,这是从github上down下来的同步代码FROM jenkinsMAINTAINER james@example.comENV REFRESHED_AT 2016-06-01USER rootRUN apt-get -qq update && apt-get install -qq sudoRUN echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoersRUN wget http://get.docker.com/builds/Linux/x86_64/docker-latest.tgzRUN tar -xvzf docker-latest.tgzRUN mv docker/* /usr/bin/USER jenkinsRUN /usr/local/bin/install-plugins.sh junit git git-client ssh-slaves greenballs chucknorris ws-cleanup
3.wget https://raw.githubusercontent.com/jamtur01/dockerbook-code/master/code/5/jenkins/dockerjenkins.sh

内容:

#!/bin/bash# First, make sure that cgroups are mounted correctly.CGROUP=/sys/fs/cgroup[ -d $CGROUP ] ||  mkdir $CGROUPmountpoint -q $CGROUP ||  mount -n -t tmpfs -o uid=0,gid=0,mode=0755 cgroup $CGROUP || {    echo "Could not make a tmpfs mount. Did you use -privileged?"    exit 1  }# Mount the cgroup hierarchies exactly as they are in the parent system.for SUBSYS in $(cut -d: -f2 /proc/1/cgroup)do  [ -d $CGROUP/$SUBSYS ] || mkdir $CGROUP/$SUBSYS  mountpoint -q $CGROUP/$SUBSYS ||    mount -n -t cgroup -o $SUBSYS cgroup $CGROUP/$SUBSYSdone# Now, close extraneous file descriptors.pushd /proc/self/fdfor FD in *do  case "$FD" in  # Keep stdin/stdout/stderr  [012])    ;;  # Nuke everything else  *)    eval exec "$FD>&-"    ;;  esacdonepopddocker daemon &exec java -jar /opt/jenkins/jenkins.war
4.构建新镜像:docker build -t smart/dockerjenkins .

5.创建容器:docker run -p 8080:8080 --name jenkins --privileged -d jamtur01/dockerjenkins

6.在浏览器中输入http://ip:8080/ 则可以访问jenkins首页,这里需要输入密码。


7.执行docker logs jenkins 查看密码信息。


8.输入密码后需要选择,我们直接选择安装插件的选项


9.开始安装插件


10.主界面。



三、创建新的Jenkins作业(包括多配置的Jenkins)

就是配置jenkins的过程,由于本人对Jenkins不熟悉,只是通过docker构建了Jenkins,所有以下的配置和整理书本上都有,这里就不详细说明了,等自己配置好Jenkins后再来进行详细配置的说明。


下一章是Docker构建服务


新手一枚,欢迎拍砖~ ~ ~













原创粉丝点击