Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1648609
  • 博文数量: 63
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 646
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-26 18:02
个人简介

祸兮福之所倚,福兮祸之所伏

文章分类

全部博文(63)

文章存档

2020年(11)

2019年(10)

2017年(10)

2016年(25)

2015年(7)

我的朋友

分类: 虚拟化

2016-11-10 17:31:58

          git 代码版本管理器
         jenkins  自动构建集成系统
         docker    虚拟化容器          
 
        实际集成流程      git上某分支提交代码 ----> jenkins 检测到该分支代码发生变动,触发构建项目,下载分支代码,根据编辑的Dockerfile 生成docker镜像,从镜像生成容器 --> 测试 --> 测试成功提交master分支 ---> 
       jenkins 检测到master分支变动 ---> 触发部署流程  ---> jenkins 部署到生产环境节点 ---> 上线


     在提交到master分支前,可以很方便的实现各类测试,完全自动化,能够在几分钟之内构建出测试环境进行测试。
     上线自动化


实验:    
       准备环境:  服务器 centos 6.5   
               
       安装docker   yum install docker -y
      安装jenkins   
sudo wget -O /etc/yum.repos.d/jenkins.repo 
sudo rpm --import 
   yum install jenkins 

   jenkins安装好相应插件

   构建一个项目,并增加git代码地址
    
  

构建触发器   这里使用当有push代码的时候触发
   

构建环境未选择,可根据需求选择,这个对于实际构建关系不大


接下来重点,实现构建镜像和容器


dcker会根据在git的 php-fpm目录下的Dockerfile 构建镜像,实现准备一个基础镜像,可以在图片中的git地址获取代码

构建容器的时候,是基于构建的body221/nginx:v1 镜像将本机/mnt/myApp 目录映射到容器的/app 目录,/app在nginx配置文件值已经设置为网站跟目录,这样可以直接修改本机目录实现对容器的目录修改,容器nginx的80端口映射到主机的7071,可以直接在浏览器中访问


     到此构建结束,此处并没有使用docker的jenkins镜像,直接基于主机的配置,本机的docker.sock 需要赋予jenkins用户的执行权限,否则构建时候报错,没权限。

    如果使用docker的jenkins镜像,集成后输出构建的镜像,在通过镜像输出容器进行测试。





    










            
阅读(4141) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~