文章目录
- 前言
- 一、持续集成及Jenkins介绍
-
- [1.3 持续集成概念](#1.3 持续集成概念)
- [1.4 Jenkins介绍](#1.4 Jenkins介绍)
- 二、GitLab配置与git集成实践
-
- [2.1 GitLab概述](#2.1 GitLab概述)
- [2.2 部署GitLab服务器](#2.2 部署GitLab服务器)
- [2.3 安装Gitlab环境](#2.3 安装Gitlab环境)
- [三、上传 若依项目 到 gitlab](#三、上传 若依项目 到 gitlab)
-
- [3.1 下载ruoyi项目](#3.1 下载ruoyi项目)
- [3.2 在Ruoyi目录初始化一个目录,为本地仓库添加一个远程仓库地址,名称为 origin。](#3.2 在Ruoyi目录初始化一个目录,为本地仓库添加一个远程仓库地址,名称为 origin。)
- [3.3 将当前目录所有文件或目录打包在远程仓库中](#3.3 将当前目录所有文件或目录打包在远程仓库中)
- [3.4 提交](#3.4 提交)
- [3.5 上传](#3.5 上传)
- 总结
前言
本文主要讲了GitLab配置与git集成实践
一、持续集成及Jenkins介绍
软件开发生命周期(Software Development Life Cycle,SDLC)是集合了计划、开发、测试和部署过程的完整流程:
1、对项目进行需求分析
2、设计方案解决需求
3、开发进行代码开发,将方案进行实战
4、对开发的软件进行测试,包括功能、代码、压力等测试
5、后续持续对产品进行更新迭代。
需求分析:根据项目需求进行可行性分析,收集信息,制定项目目标和预算
设计:设计系统架构和功能,创建项目计划
实现:开发人员根据任务进行代码开发
测试:进行功能测试、代码测试、压力测试等
进化:产品持续改进、维护和功能优化
1.3 持续集成概念
持续集成(Continuous Integration)指的是频繁地将代码集成到主干,核心措施是代码集成前必须通
过自动化测试。
持续集成流程:
1.提交:开发者向代码仓库提交代码
2.测试:代码仓库触发自动化测试
3.构建:将源码转换为可运行的实际代码
4.测试:进行第二轮全面测试
5.部署:将版本部署到生产服务器
6.回滚:出现问题时可快速回滚
持续集成组成要素:
自动构建过程
代码存储库(GitLab/SVN)
持续集成服务器(Jenkins)
1.4 Jenkins介绍
Jenkins是一款流行的开源持续集成工具,具有以下特征:
1、开源的Java语言开发
2、易于安装部署配置
3、支持消息通知和测试报告
4、分布式构建能力
5、丰富的插件支持
二、GitLab配置与git集成实践
2.1 GitLab概述
GitLab是一个用于仓库管理系统的开源项目,基于Git作为代码管理工具,具有以下特点:
1、开源免费(基于MIT协议)
2、可部署到自己的服务器
3、适合团队内部协作开发
4、提供完整的代码管理功能
2.2 部署GitLab服务器
环境要求:
安装docker
虚拟机至少4G内存
CentOS 7/8系统
10.0.0.11
关闭网络增强服务与防火墙

2.3 安装Gitlab环境
这里是用容器进行安装
第一步 拉取Gitlab镜像
docker pull beginor/gitlab-ce ------------------------------拉取gitlab镜像

第二步 创建容器并且将gitlab的配置文件目录、日志目录、数据目录进行挂载
mkdir -p /data/gitlab/{etc,log,data} ------------------------创建挂载点
chmod 777 /data/gitlab/{etc,log,data} ------------------------------给挂载点进行加权,方便之后的修改或查看

docker run -itd --name=gitlab --restart=always --privileged=true -p 8443:443 -p 88:80 -p 222:22 -v /data/gitlab/etc:/etc/gitlab -v /data/gitlab/log:/var/log/gitlab -v /data/a:/var/opt/gitlab beginor/gitlab-ce:latest ------------------------------------------------创建并开启容器,并进行挂载,映射端口

--restart=always:退出容器时自动删除容器
-p 8443:443:https映射
-p 88:80 :http映射
-p 222:22:ssh映射,用于克隆代码
--privileged=true:给容器赋权
第三步 修改配置文件(尽量在宿主机的挂载点改)
vim /data/gitlab/etc/gitlab.rb ------------------------------------------------编辑gitlab配置文件
找不到位置的可以用sed命令锁定修改
sed -i "/external_url 'GENERATED_EXTERNAL_URL'/a external_url\t'http://10.0.0.11:88' " /data/gitlab/etc/gitlab.rb ------------------------------修改配置文件中gitlab监听地址
sed -i "/gitlab_ssh_host/a gitlab_rails['gitlab_ssh_host']= '10.0.0.11' " /data/gitlab/etc/gitlab.rb
------------------------------ 修改gitlab远程登录的主机
sed -i "/gitlab_shell_ssh_port/a gitlab_rails['gitlab_shell_ssh_port'] = 222" /data/gitlab/etc/gitlab.rb
------------------------------修改gitlab远程登录的端口

第四步 重启容器尝试访问10.0.0.11:88并创建新密码(这里已经创建了)

第五步 创建一个群组 群组名字为yjs



第六步 创建该群组负责的项目 项目名字为yjs1023

第七步 创建ssh密钥(在宿主机上)
创建密钥对
ssh-keygen -t rsa -C "admin@example.com"
第八步 将密钥给gitlab
cat /root/.ssh/id_rsa.pub ------------------------------查看公钥

将公钥给gitlab

三、上传 若依项目 到 gitlab
3.1 下载ruoyi项目
通过git命令在gitte中下载一个ruoyi项目

3.2 在Ruoyi目录初始化一个目录,为本地仓库添加一个远程仓库地址,名称为 origin。
git init
git remote add oriing yjs-1023 ssh://git@10.0.0.11:222/yjs/yjs-1023.git ------------------------------为本地仓库添加一个远程仓库地址,名称为 origin。(注意这里是ssh方式)

3.3 将当前目录所有文件或目录打包在远程仓库中
git add .
3.4 提交
git commit -m "Initial commit"
3.5 上传
git push -u origin master ------------------------将远程仓库origin中的文件上传


总结
本文主要讲了GitLab配置与git集成实践,谢谢观看😜