CICD构建实验「建议收藏」

CICD构建实验「建议收藏」CICDCICD是一个可以集部署、拉取、上传等于一体的架构环境,它支持一线进行部署,免去了人工一条条的进行部署环境的工作流程,大大降低了人力手工运维成本和出错率。CICD的搭建需要至少三台服务器,他们分别监管着Harbor(镜像仓库存储),git(开发代码仓库存储),Jenkings(一键化部署)企业级镜像Harbor部署docker镜像级的存储可以储存在dockerhub上,也可以储存在自建本地仓库上,而Harbor属于本地仓库的其中一种,该软件可以提供图形化界面操作,安装简单,且方便查看。

大家好,又见面了,我是你们的朋友全栈君。

CICD

CICD是一个可以集部署、拉取、上传等于一体的架构环境,它支持一线进行部署,免去了人工一条条的进行部署环境的工作流程,大大降低了人力手工运维成本和出错率。
CICD的搭建需要至少三台服务器,他们分别监管着Harbor(镜像仓库存储),git(开发代码仓库存储),Jenkings(一键化部署)

企业级镜像Harbor部署

docker镜像级的存储可以储存在docker hub 上,也可以储存在自建本地仓库上,而Harbor属于本地仓库的其中一种,该软件可以提供图形化界面操作,安装简单,且方便查看。
它是一个类似docker hub的可以使用浏览器进行登录操作查看的软件,又不需要像docker hub需要直接网上拉取,导致容易出现丢包、拉取失败的现象,因此国内很多企业都会将安装包存放于此。

安装

1)首先需要一台虚拟机,在搭建好docker和compose的情况下才能进行Harbor的下载,其中Harbor的下载有多种,有在线安装(通过docker hub下载镜像),这边讲的就是离线下载,即直接安装安装包。安装包可以通过官方地址:https://vmware.github.io/harbor/cn/ 去进行下载

2)准备一台虚拟机,其ip地址为192.168.53.10,将下载好的Harbor安装包拉入到虚拟机中。

3)安装docker:
创建docker专用下载通道:

yum install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

开启存储库
yum-config-manager --enable docker-ce-nightly
yum-config-manager --enable docker-ce-test

安装docker
yum install docker-ce docker-ce-cli containerd.io

安装完成后使用命令使docker永久开启
systemctl start docker
systemctl enable docker

4)安装compose(可以直接将编辑好的compose放置/usr/local/bin下,并且更改为可执行文件即可)

5)解压Harbor压缩包,并且将压缩包放置在/usr/local目录下:
tar -xf harbor-offline-installer-v1.9.1.tar

6)修改文件vi /etc/docker/daemon.json ,添加如下代码:

{"insecure-registries":[“192.168.9.10"]}			\\更改成自己Harbor的IP地址

systemctl restart docker		\\重启docker

7)进入解压好的harbor文件中,编写vim harbor.yml,将hostname改为自己的地址
在这里插入图片描述

8)./prepare
./install.sh
进行安装

8)当完成安装后,即可通过本机地址进行浏览器的访问,账户名为admin,密码默认为Harbor12345

9)当我们上传某个镜像的时候,即可通过tag改名(harbor的ip地址/存放的标签/文件名:标签)来进行改名,并且上传。
上传的话首先需要进行登录,登录的形式为docker login ip地址 -uadmin -pHarbor12345 的形式来登录,如果忽略了后面的一步,系统会默认登录到docker hub网页
在这里插入图片描述

在这里插入图片描述

10)创建存放镜像的项目页(也可以称之为目录)
在这里插入图片描述

11)上传镜像,第一步,登录:docker login 192.168.53.10 -uadmin -pHarbor12345
12)第二步,镜像改名: docker tag hello-world 192.168.53.10/xiaoyang/hello-world:v1
13)第三步,上传镜像:docker push 192.168.53.10/xiaoyang/hello-world:v1
14)第四步:验证,可以在xiaoyang的项目页中进行查看
15)为了完成DIDC的实验,需要提前将tomcat镜像放置在harbor的项目中
在这里插入图片描述

git 开发语言存放仓库

Harbor是用于镜像的存放的,而git则是用于开发语言的存放的,二者分工不同,但却是架构中的一员,现实中,最首先由开发工作人员上传代码和数据进入git,而后由运维从Jenkings来进行一键化的部署
需要新开一台服务器:192.168.53.20

安装

1)安装git首先需要拥有ssh软件,但是该程序linux是自带拥有的,所以可以直接进行下载,如果没有ssh,可以使用:yum install openssh.x86_64来进行下载
2)yum install -y git 下载git,也可以通过官网中下载安装包进行拉取
git官网:https://mirrors.edge.kernel.org/pub/software/scm/git/

3)使用git version命令可以查看git版本,同时也可以进行查看git是否进行安装
4)创建用户,用户名字随意,但是尽量还是使用和git相关的名字
useradd gitme
passwd 123
5)切换到gitme用户
6)

mkdir demo.git		#创建名为demo.git的用户
cd demo.git/	
git --bare init 		#在该目录下,初始化仓库

jenkings一键部署

jenkings是一款可以实现一键化部署的软件,以往,一个开发软件或者app的部署需要从测试到上线起码需要一天的时间,而jenkings通过与其他服务器的联动的,大大简化了到正式上线为止的繁琐步骤,所以,这也是jenkings被人选择的原因。
需要新开一台服务器:192.168.53.30

安装

1)准备材料:jenkings主机上需要安装docker、tomcat、java文件等,其中,docker是为了进行部署,tomcat、jdk则是为了进行java代码的编译(jenkings需要接触java)
2)yum -y install java 安装java模块
3)yum -y install maven
4)docker安装略,而后将tomcat的安装包拉进/usr/local的目录中,进入tomcat的bin目录下,输入./startup.sh启动tomcat
5)为了不影响使用,需要将tomcat的webapps里的目录删除,只留ROOT
6)将.war包放入到ROOT下
7)将.war包用unzip解压
上述为源代码安装,yum安装如下:

wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key		#导入公钥
yum install jenkins

#通过java命令可以查看jenkins是否正常下载完成
java -jar /usr/lib/jenkins/jenkins.war --httpPort=端口号	#命令可以开启jenkins
#该端口号不可与别的端口号重复

开启过后可以直接使用端口ip地址:端口号 来进行浏览器访问
在这里插入图片描述

8)从镜像平台拉包,并且更改,此操作先不要开启tomcat或者jenkings

git clone https://github.com/407777853/java-demo
cd java-demo/
vi .git/config 
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = gitme@192.168.53.20:/home/gitme/demo.git			#修改这一步为自己的git服务器
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master

8)cd java-demo

git add .		#添加该代码进入存储git库
git status		#查看git库
git commit -m "all"	
[root@localhost java-demo]# git push origin master
Everything up-to-date

9)免密登录

ssh-keygen 
ssh-copy-id gitme@192.168.53.20

10)根据内容提示cat /root/.jenkins/secrets/initialAdminPassword,来将密码复制粘贴并且放置在浏览器中。
11)根据推荐来安装相应的模块
12)可以进行注册登录
在这里插入图片描述

13)上传jenkings的私钥到网页上:cat /root/.ssh/id_rsa
14)添加凭据,将类型改为SSH Username with private key
在这里插入图片描述

15)而后在凭据中会生成该凭据id
在这里插入图片描述

16)新建item,选择流水线(已安装好的模块)
在这里插入图片描述
在这里插入图片描述

stage为任务项
这边要注意的是checkout这一列需要将对应的凭据ID更改,并且指向git服务器
其余的为镜像服务器,并且要确保路径和你的Harbor项目对应

17)执行Build now命令开始构建
18)而后便可以完成一键部署

备注

如果没构建成功,有以下可能:
1、所需要的模块因为网络等问题并没有下载成功
2、脚本配置文件中的IP地址和指向地点有没有写对的遗漏地点

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137966.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Windows安装git客户端[通俗易懂]

    Windows安装git客户端[通俗易懂]1、客户端安装工具如下Git-2.12.2.2-64-bit.exe下载地址:https://gitforwindows.org/,界面如下TortoiseGit-2.4.0.2-64bit.msi下载地址:https://tortoisegit.org/,界面如下Git-2.12.2.2-64-bit.exe:是需要安装的git真正工具TortoiseGit-2.4.0.2-64bit.msi:…

    2022年9月7日
    0
  • jboss安装与配置_微信最新版下载并安装

    jboss安装与配置_微信最新版下载并安装前提:已经设置好JDK环境变量在http://www.jboss.org/jbossas/downloads/下载

    2022年10月3日
    0
  • typora图床阿里云_织梦七牛云

    typora图床阿里云_织梦七牛云一、创建并上传文件到存储空间1.注册七牛账号,并且实名认证2.创建储存空间打开侧边栏,选择对象存储选择新建空间存储空间名称:按规则随便取存储区域:选择离靠近的地区访问控制:选择公开,否则

    2022年8月16日
    5
  • 【转载】.NET Remoting学习笔记(一)概念

    【转载】.NET Remoting学习笔记(一)概念

    2021年11月18日
    43
  • 赤池信息准则AIC,BIC「建议收藏」

    赤池信息准则AIC,BIC「建议收藏」很多参数估计问题均采用似然函数作为目标函数,当训练数据足够多时,可以不断提高模型精度,但是以提高模型复杂度为代价的,同时带来一个机器学习中非常普遍的问题——过拟合。所以,模型选择问题在模型复杂度与模型对数据集描述能力(即似然函数)之间寻求最佳平衡。人们提出许多信息准则,通过加入模型复杂度的惩罚项来避免过拟合问题,此处我们介绍一下常用的两个模型选择方法——赤池信息准则(AkaikeInfo…

    2022年5月16日
    44
  • cavas的使用汇总[通俗易懂]

    cavas的使用汇总[通俗易懂]canvas图像处理汇总一、canvas的情况canvas自从出来了之后,在前端的图像处理上面提供了各种各样的遍历,虽然很多的操作其实都是要应用到算法的,但是这个也给前端提供了很多的可能性,其中最

    2022年8月6日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号