持续基础怎么搞?Jenkins+Docker+Git实战

文章通过一个案例介绍了CI(持续集成)的流程,包括开发人员提交代码到Git仓库,Jenkins自动触发构建,打包镜像并推送到镜像仓库的过程。同时,详细展示了如何设置Git代码仓库,部署Jenkins环境,构建私有Harbor镜像仓库,以及如何使用Jenkins的Pipeline进行自动化构建和部署。
摘要由CSDN通过智能技术生成

在如今的互联网时代,随着软件开发复杂度的不断提高,软件开发和发布管理也越来越重要。目前已经形成一套标准的流程,最重要的组成部分就是持续集成(Continuous Integration,CI)及持续部署、交付(CD)。在此,我们来以一个案例初步了解 CI 流程。那么什么是 CI 呢?简单来讲,CI 就是将传统的代码合并、构建、部署、测试都集成在一起,不断地执行这个过程,并对结果进行反馈。

CI 流程设计图:

工作流程:

  • 开发人员提交代码到Git版本仓库;

  • Jenkins人工/定时触发项目构建;

  • Jenkins拉取代码、代码编码、打包镜像、推送到镜像仓库;

  • Jenkins在Docker主机创建容器并发布

主机环境规划:

  • docker-jenkins:    10.0.0.98

  • docker-git-harbor:10.0.0.99

01 部署Git代码版本仓库

安装:

[root@docker-git-harbor ~]# yum install git -y

配置git用户:

[root@docker-git-harbor ~]# useradd git

[root@docker-git-harbor ~]# passwd git

创建库:

[git@docker-git-harbor ~]$ mkdir tomcat-java-demo.git

[git@docker-git-harbor ~]$ cd tomcat-java-demo.git/
[git@docker-git-harbor tomcat-java-demo.git]$ git --bare init
Initialized empty Git repository in /home/git/tomcat-java-demo.git/
[git@docker-git-harbor tomcat-java-demo.git]$ ls
branches  config  description  HEAD  hooks  info  objects  refs
[git@docker-git-harbor tomcat-java-demo.git]$

另一台docker-jenkins访问该仓库:

[root@docker-jenkins ~]# git clone git@10.0.0.99:/home/git/tomcat-java-demo.git

Cloning into 'solo'...
The authenticity of host '10.0.0.99 (10.0.0.99)' can't be established.
ECDSA key fingerprint is SHA256:XNWQhGsAsqd84k/6OYV3xl1+mPGjtASsxeV1YVLZVas.
ECDSA key fingerprint is MD5:b4:bd:16:2b:de:e7:7c:fd:c5:dd:91:75:20:ff:3e:0a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.0.0.99' (ECDSA) to the list of known hosts.
git@10.0.0.99's password:
warning: You appear to have cloned an empty repository.
[root@docker-jenkins ~]# ls
anaconda-ks.cfg  tomcat-java-demo.git
[root@docker-jenkins ~]# ls tomcat-java-demo.git
[root@docker-jenkins ~]#

模拟生产项目,拉取github上的一个demo,并上传至本地git库

[root@docker-jenkins ~]# mv tomcat-java-demo tomcat-java-demo.bak

[root@docker-jenkins ~]# git clone https://github.com/dingkai163/tomcat-java-demo.git
[root@docker-jenkins tomcat-java-demo]# cat .git/config
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote &
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值