容器云平台基于GitLab+Jenkins构建CI/CD

本文档介绍了如何利用GitLab和Jenkins构建CI/CD环境,旨在加速新功能上线,实现DevOps流程。首先,准备虚拟机并安装基础环境,包括Kubernetes。接着,部署Jenkins容器,导入并启动Jenkins,并配置访问及插件。然后,启动Gitlab容器,创建项目并推送代码。最后,配置Jenkins连接Gitlab,设置Webhook和API Token,以实现自动化构建和部署。
摘要由CSDN通过智能技术生成

1.前言

该公司决定采用GitLab +Jenkins来构建CI/CD环境,以缩短新功能开发上线周期,及时满足客户的需求,实现DevOps的部分流程,来减轻部署运维的负担,实现可视化容器生命周期管理、应用发布和版本迭代更新,需要完成GitLab + Jenkins + Kubernetes的CI/CD环境部署。CI/CD应用系统架构如下:

2.环境准备

2.1 虚拟机下载

当然你也可以用自己的。。下载链接如下

百度网盘-链接不存在  提取码:b2m1

2.2 安装基础环境

2.3 基础环境检查

[root@master ~] kubectl get cs
NAME             	STATUS      MESSAGE             ERROR
controller-manager	Healthy     ok                  
scheduler			Healthy     ok                  
etcd-0				Healthy     {"health":"true"} 
[root@master ~] kubectl get nodes
NAME		STATUS		ROLES		AGE		VERSION
master		Ready		master		37m		v1.18.1

3.部署Jenkins环境

3.1导入Jenkins容器

  • 把离线包jenkins_offline.tar上传至master节点/root目录下,解压文件:
  • tar -zxf jenkins_offline.tar -C /opt/

  • 导入镜像
  • cd /opt/
    docker load -i jenkins.tar

3.2启动Jenkins容器

docker run -d -p 8080:8080 -u root --name jenkins  \
-v /home/jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(which docker):/usr/bin/docker \
-v /usr/bin/kubectl:/usr/local/bin/kubectl \
-v /root/.kube:/root/.kube \
jenkins/jenkins:2.262-centos
  • 查看密码
  • docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

  • 通过浏览器访问http://IP:8080访问Jenkins,如图所示
  • 跳过插件安装
  • 设置Jenkins用户:chinaskill 密码:000000
  • 安装插件
  • cp -rf /opt/plugins/* /home/jenkins_home/plugins/

  • 重启Jenkins容器
  • docker restart jenkins

刷新网页进入登录界面

4.部署Gitlab环境

4.1启动Gitlab容器

docker run -d -h gitlab -p 1022:22 -p 81:80 -p 443:443 --restart always --name gitlab \
-v /srv/gitlab/config:/etc/gitlab \
-v /srv/gitlab/gitlab/logs:/var/log/gitlab \
-v /srv/gitlab/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:12.9.2-ce.0
  • 查看Gitlab容器启动状态 !>Gitlab启动会稍微慢一点具体看状态
  • docker ps | grep gitlab

    正在启动的状态 !>注意STATUS的状态

    启动成功的状态 !>注意STATUS的状态

  • 通过浏览器访问http://IP:81访问Gitlab,并设置root密码:00000000

  • 登录Gitlab用户:root 密码:00000000

  • 4.2在Gitlab创建项目

  • 点击"Create a project",创建项目ChinaskillProject,可见等级选择"Public"
  • 4.3PUSH项目到Gitlab

  • yum install -y git && cd /opt/ChinaskillProject/
    git remote remove origin
    git remote add origin http://IP:81/root/chinaskillproject.git
    git add .
    git commit -m "Initial commit"
    git push -u origin master

  • 5.配置Jenkins连接Gitlab

    5.1设置允许Webhook和服务对本地网络的请求

  • Admin Area → Setting → Network → Outbound requests
  • 把Allow requests to the local network from web hooks and services勾上后保存更改
  • 5.2创建Gitlab API Token

  • 点击右上角用户头像图标,选择"Settings"
  • 点击左侧导航栏的"Access Tokens"添加Token
  • 点击"Create personal access token"生成Token
  • 复制Token,后面配置Jenkins时会用到
  • 5.3设置Jenkins连接Gitlab

ccccc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

花小智

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值