按照在(Docker里的)Jenkins里运行Docker(
http://www.dockone.io/article/431)进行实践。
通过该文章,可以快速了解如何在一个容器(这里是Jenkins容器)里装载Docker sock以便创建其“兄弟”容器,有人称之为DooD(Docker-outside-of-Docker),以区别于DinD(Docker-in-Docker),后者是在容器中安装一个完整的隔离的Docker版本。
当然,也可以在Jenkins容器中使用Docker命令执行其他Docker相关的操作。
在实践的同时将源码(主要是Dockerfile和README.MD)托管到GitHub。
1、从Github拉取源码
2、构建镜像
docker build -t myname/jenkins:1.609.1 docker-jenkins/Dockerfile
3、基于镜像运行容器(注意把docker.sock和docker映射到jenkins容器里
)
docker run -d --name myjenkins -v /var/run/docker.sock:/var/run/docker.sock -v $(which docker):/usr/bin/docker -p 8080:8080 myname/jenkins:1.609.1
4、Jenkins创建JOB,构建步骤选择Execute shell,内容为:sudo docker images,构建后日志输出如下:
![](http://static.oschina.net/uploads/space/2015/0714/182020_JvrG_1588291.png)
参考:
jenkins官方镜像(
https://github.com/jenkinsci/docker)
running-docker-in-jenkins-in-docker( http://container-solutions.com/running-docker-in-jenkins-in-docker/)
running-docker-in-jenkins-in-docker中文翻译版( http://www.dockone.io/article/431)
running-docker-in-jenkins-in-docker( http://container-solutions.com/running-docker-in-jenkins-in-docker/)
running-docker-in-jenkins-in-docker中文翻译版( http://www.dockone.io/article/431)