docker环境下Jenkins持续集成(一)
来源:互联网 发布:中科恒业医学软件 编辑:程序博客网 时间:2024/05/22 08:01
在docker的的大环境下,讲究一切docker化,所以继续集成也顺应潮流docker化。
准备环境
从docker hub中pull下来jenkins的官方镜像,并运行起来。
此时,jenkins是运行docker容器中,要通docker配合完成持续集成,jenkins必须要能通知或者是调用docker命令。
在容器中调用docker的方式
现在的问题是,jenkins是运行docker容器中,无法感知docker的存在。
在Docker中使用Docker有三种方:
DooD(Docker-outside-of-Docker)
我们需要赋予jenkins用户sudo权限以便能在容器内运行Docker命令。当然,也可以将jenkins用户加入到Docker组中来避免在所有Docker命令前使用‘sudo’,不过由于这个组gid的不同会造成不可移植
DinD(Docker in Docker)
在docker镜像中要再安装docker服务。
此时,在容器中的docker和宿主机的docker是两个不同的程序,相互没有关联,DinD并不比使用特权模式的容器安全性高,不过确实能避免使用sudo。DinD最主要的劣势是你无法重用宿主缓存的镜像(不过如果需要为测试容器提供一个与宿主隔离的干净环境,这将很有用)。
使用HTTPS与Docker后台程序通讯
jenkins配置docker插件,并且docker进行端口配置。
通过HTTPS暴露socket不需要sudo并且可以使用宿主的镜像,但因为打开了端口增加了攻击面,可以说是最不安全的。
0 0
- docker环境下Jenkins持续集成(一)
- docker环境下Jenkins持续集成(二)
- Jenkins+Docker搭建持续集成测试环境
- Jenkins+Docker搭建持续集成测试环境
- Jenkins+Docker搭建持续集成测试环境
- Jenkins+Docker搭建持续集成测试环境
- Jenkins构建iOS持续集成环境(一)
- 基于jenkins+gitlab+redmine构建持续集成环境(一)
- jenkins下搭建c++持续集成环境
- centos下部署jenkins持续集成环境
- jenkins下搭建c++持续集成环境
- Ubuntu下的Jenkins 持续集成(一)
- Jenkins & Docker 持续集成实践
- Centos7+svn+jenkins+maven+nexus+SonarQube+docker持续集成安装(一)
- Jenkins持续集成环境搭建
- 持续集成环境Jenkins详解
- 持续集成环境Jenkins详解
- 搭建 Jenkins 持续集成环境
- [Linux]搭建ftp服务器
- Linux进程与线程
- MySQL中四种常用存储引擎的介绍
- Android面试之Activity
- LoRaWAN 规范1.0 (章节10~13)
- docker环境下Jenkins持续集成(一)
- Java中Map容器的遍历方法
- MYSQL数据库的导入和导出
- 数组--只出现一次的字符 and 第一个缺失的字符
- hdu 3001 Travelling
- docker环境下Jenkins持续集成(二)
- POJ 2728 Desert King (最优比率生成树 01分数规划问题)
- bzoj 3129: [Sdoi2013]方程(容斥原理+组合数学+数论)
- java5、java6、java7、java8的新特性