CI/CD基本流程介绍

时间:2023-02-09 13:02:03

1.1CI/CD基本配置介绍:              

配置jenkins              

软件版本管理              

      配置jenkins访问gitlab代码仓库              

测试下载              

下载到子目录

准备两台web服务器       

部署代码到web服务器

自动化部署流程                    

在Jenkins上配置FTP服务器                     

配置jenkins把gitlab下载的代码打包

web服务自动部署              

安装httpd服务              

编写自动上线脚本

1.2  CI/CD流程图及介绍如下:

CI/CD基本流程介绍

1.          程序员编写代码,推送到gitlab服务器

2.          Jenkins服务器从gitlab上下载代码

3.          Jenkins处理下载的代码

–            删除下载目录的版本库

–            将下载的代码打包

–            计算程序压缩包的md5值

–            在Jenkins上安装ftp服务,共享程序压缩包

4.          web服务器下载软件包,并应用(通过脚本实现)

5.          访问测试

1.3在Jenkins上配置FTP服务器

安装vsftpd

[root@jenkins ~]# yum install -y vsftpd# 启用ftp的匿名访问

[root@jenkins ~]# vim +12 /etc/vsftpd/vsftpd.conf anonymous_enable=YES# 起服务

[root@jenkins ~]# systemctl enable vsftpd --now# ftp的数据目录默认是/var/ftp。# 在ftp上创建保存压缩包的路径

[root@jenkins ~]# mkdir -p /var/ftp/deploy/packages# 因为jenkins服务需要向该目录保存文件,所以设置jenkins对它有权限

[root@jenkins ~]# chown -R :jenkins /var/ftp/deploy[root@jenkins ~]# chmod -R 775 /var/ftp/deploy/


1.4web服务自动部署

编写自动上线脚本

• 下载软件包

• 检查软件包是否损坏

• 解压、部署到web服务器

1.5完整测试流程:

– 程序员编写新版本并推送到服务器

– Jenkins上构建新版本

– web服务器上执行web.sh部署新版本

程序员编写新版本
[root@develop myproject]# vim index.html <marquee>Welcome to tedu</marquee>
[root@develop myproject]# git add .
[root@develop myproject]# git commit -m "modify index.html"
[root@develop myproject]# git tag 2.0# 程序员推送到服务器
[root@develop myproject]# git push[root@develop myproject]# git push --tags
# web服务器上执行部署新版本[root@web1 html]#
​​ [root@web1 html]# ls /var/www/deploy/myproject-1.1         myproject-2.0         ver.txtmyproject-1.1.tar.gz  myproject-2.0.tar.gz
# 访问http://192.168.4.100/tedu-cloud​