Docker+Jenkins+Gitlab+Maven搭建持续集成环境

        接前文,已经在windows电脑上安装了虚拟机,部署安装了Docker和Gitlab,为了模拟实现实际工作中使用Jenkins完成持续集成和持续部署,现在此基础上,试着搭建Docker+Jenkins+Gitlab+Maven的持续集成环境。

目录

1、Docker下安装Jenkins

2、访问Jenkins,创建构建任务

3、开始在Jenkins上部署


大体步骤如下:

  • 开发人员通过IDE工具将代码推送到gitlab.
  • jenkins从gitlab中获取到源码,并使用maven编译、打包、自动构建镜像.
  • jenkins在构建脚本中调用docker命令将构建好的镜像push到本地Docker Registry.并启动相应的容器.
  • jenkins构建失败或者成功,可以及时将结果推送给相关人员,比如测试人员,安排测试.
  • 运维人员只需获取相应的镜像就可以快速发布到生产环境

1、Docker下安装Jenkins

注意在安装Jenkins时踩过的坑:
A、安装的不是最新版本的Jenkins,导致在下载插件时总是失败。
    解决:使用最新版本lts
B、因为没有跟虚拟机内的docker共用一个docker,导致Jenkins里编译后处理的shell脚本里不认识docker命令
    解决:使用dood方式重新编译Jenkins,共用宿主机内的docker

下面详细说明。

①、首先在docker官方仓库网页搜索jenkins的镜像。注意,要安装的是 jenkins/jenins:lts,不是jenins,后者已经被官方废弃了。

docker pull jenkins/jenkins:lts

②、因为自己的docker和Jenkins安装在同一虚拟机下,并且打算在Jenkins的编译后处理里使用的shell脚本里,也想使用docker环境,但如果不加配置,则会在shell脚本执行时报:Docker not found错误。因此,决定使用dood方案,以使得在docker容器中使用宿主机上的docker服务。

②-1.先删掉之前建好的jenkins容器和镜像,然后在虚拟机上创建一个空的Dockerfile文件.

[root@bogon jenkins-dood]# touch Dockerfile

②-2.编写Dockerfile脚本

[root@bogon jenkins-dood]# vi Dockerfile

FROM jenkins/jenkins:lts
USER root
ARG dockerGid=999

RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/gro
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值