Jenkins持续集成与GitLab代码管理———(部署GitLab服务器)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、部署GitLab服务器
- 1.安装依赖环境+安装gitlab
- 2.调整gitlab配置
- 3.重载配置,重启gitlab
- 二、GitLab基础配置
- 三、 GitLab项目管理实践
- 四、Git代码管理操作
- 克隆和初始化项目
- 推送现有项目
- 五、 SSH免密配置
- 生成SSH密钥
- 配置GitLab公钥
- 切换SSH方式推送
- 总结
前言
提示:这里可以添加本文要记录的大概内容:
1、git本质:主要就是一个来管理代码变化的工具 帮助团队 合作开发 。它的作用是记录和管理的代码历史,确保每个人的修改不会丢失,并且能方便地合并大家(开发)的工作
它的关键点 : 分布式 记录变化 分支 多人协作等
简洁点就是 代码管理器
2、gitlab本质 就是代码管理 + 自动化流程 的平台, 它让开发团队可以更加的高效的协作、自动化构建、测试和部署,简化了整个开发流程 确保代码质量,减少手动操作
3、jenkins 本质 就是一个自动化工具 (自动化助手),每当你提交代码, Jenkins就会自动动帮你构建、测试、部署,确保代码的质量和更新的及时性。 主要 就是为了方便团队可以高效的进行开发 不需要手动进行重复性操作
用于 持续集成 (CI)和持续 交付(CD) 就是为了高效的开发与交付
三个(git gitlab jenkins)知识点 串联起来
1、git: 你(运维/运维团队)和你的开发团队通过git管理代码 ,每次修改代码后,都使用git提交(commit)并推送(push)到gitlab
2、gitlab: gitlab存储着团队的代码,每当你提交代码,gitlab会通过 合并请求 ,让其他团队成员检查和合并你的修改。gitlab还记录所有代码的历史,方便追踪问题。
3、jenkins: 每当代码推送到gitlab后,jenkins会自动触发CI/CD 流程,首先构建新的代码,运行自动化测试,如果一切通过,jenkins会自动将最新的版本部署到测试环境。如果没有问题,jenkins还会将代码自动发布到生产环境中,确保用户可以及时使用最新的功能

jenkins
用于自动编译/部署软件项目的系统
(自动下载代码并编译发布到运行的服务器)

`
一、部署GitLab服务器
1.安装依赖环境+安装gitlab
#
yum -y install policycoreutils openssh-server openssh-clients postfix
#启动ssh服务&设置为开机启动
systemctl enable sshd && sudo systemctl start sshd
#设置postfix开机自启,并启动,postfix支持gitlab发信功能
systemctl enable postfix && systemctl start postfix
#上传gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm
yum install -y gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm
2.调整gitlab配置
vim /etc/gitlab/gitlab.rb
#修改23行的访问入口、修改1112行的监听端口
external_url 'http://192.168.10.52:88'
nginx['listen_port'] = 88


3.重载配置,重启gitlab
gitlab-ctl reconfigure
gitlab-ctl restart
启动成功后,访问192.168.10.52:88
看到以下修改管理员root密码的页面,修改密码后,然后登录即可
二、GitLab基础配置
初始设置
- 浏览器访问:http://192.168.10.13:82
- 设置管理员密码:为root用户设置新密码(如:root@123)
- 登录管理:使用root/root@123登录
三、 GitLab项目管理实践
创建开发群组
四、Git代码管理操作
用户登录配置
- 退出当前账户,使用sk账户登录(sk/yuanxiao)
- 首次登录强制修改密码

克隆和初始化项目
cd /opt
git clone http://192.168.10.23/devops/myweb.git
ls -A myweb/ # 查看.git目录

# 初始化项目
touch README.md
git add README.md
# 配置Git用户信息
git config --global user.email "hs@hs.com"
git config --global user.name "hs"
# 提交代码
git commit -m "add README"
git push -u origin master


推送现有项目
cd ~/myweb/
# 添加远程仓库
git remote add origin http://192.168.10.13/devops/myweb.git
# 查看远程仓库
git remote
# 推送代码
git push -u origin --all
git push -u origin --tags
五、 SSH免密配置
生成SSH密钥
ssh-keygen -t rsa -C "hs@hs.com" -b 4096
# 一路回车使用默认设置
cat ~/.ssh/id_rsa.pub
配置GitLab公钥
- 点击用户头像选择【设置】
- 进入【SSH密钥】页面
- 粘贴公钥内容,点击【增加密钥】
切换SSH方式推送
# 查看当前remote方式
git remote show origin
# 删除原有HTTP方式
git remote remove origin
# 添加SSH方式
git remote add origin git@192.168.10.23:devops/myweb.git
# 验证配置
git remote show origin
# 测试推送
echo 'new line
' >> index.html
git add index.html
git commit -m "modify index third"
git push
git push --tags
总结
通过gitl管理版本,gitlab提供代码托管 和团队协作,而jenkins则实现了自动化的构建、测试、部署,三者共同工作,主要是提升了开发效率,确保代码质量 并且加快服务(软件)交付速度
本文地址:https://www.yitenyun.com/3739.html






