做微信的微网站,工程建设网站策划方案,网络团队,亚马逊aws永久在线观看第四阶段
时 间#xff1a;2023年8月21日
参加人#xff1a;全班人员
内 容#xff1a;
Gitlab服务部署及应用 目录
一、Gitlab简介
二、Gitlab工作原理
三、Gitlab服务构成
四、Gitlab的优点
五、Gitlab环境部署
#xff08;一#xff09;安装部署
#xf…第四阶段
时 间2023年8月21日
参加人全班人员
内 容
Gitlab服务部署及应用 目录
一、Gitlab简介
二、Gitlab工作原理
三、Gitlab服务构成
四、Gitlab的优点
五、Gitlab环境部署
一安装部署
二Web操作
三测试 一、Gitlab简介 Gitlab 是一个基于Git实现的WEB代码仓库托管软件你可以用Gitlab自己搭建一个类似于Github一样的代码仓库一般使用gitlab搭建私有代码仓库主要是用在公司的内部代码管理。 Gitlab 功能是能够对代码的提交审核和问题跟踪这个对于软件工程代码质量的管理是至关重要的。 Gitlab分为社区版(CE)和企业版(EE)。大多数的公司还是会选择社区版。部署Gitlab是对服务器有配置要求的建议是CPU两核内存4G以上。 二、Gitlab工作原理
gitlab的原理其实就是git的工作原理GitHub也是基于git实现的 Remote远程仓库 远程仓库的内容可能被分布在多个地点的处于协作关系的本地仓库修改因此它可以与本地仓库同步也可以不同步但是它的内容是最旧的。 Repository本地仓库 这里面保存了被提交过的代码各个版本比起工作区和暂存区的内容它的内容会旧一些git commit 后同步index的目录树到本地仓库方便下一步通过git push同步本地仓库与远程仓库的同步。 index暂存区 git目录下的index文件暂存区会记录git add 添加文件的相关信息(文件名、大小),不保存文件实体通过id指向每个文件的实体可以使用git status查看暂存区的状态暂存区标记了你当前工作区中哪些内容是被git管理的。当你完成某个需求或者功能后需要提交代码那么第一步就是通过git add 先提交到暂存区。 workspace工作区 程序员进行开发改动的地方是你当前看到的内容也是最新的。平常我们开发就是拷贝远程仓库中的分支基于该分支进行开发在开发的过程就是在工作区的操作。 总结 任何对象都是在工作区中诞生和修改的 任何修改都是从进入index区才开始被版本控制的 只有把修改的代码提交到本地仓库该修改才能在仓库中留下痕迹 与协助者分享本地的修改可以push到远程仓库来共享 三、Gitlab服务构成 Nginx静态Web服务器 gitlab-shell用于处理Git命令和修改authorized keys列表 gitlab-workhorse轻量级的反向代理服务器(这个是个敏捷的反向代理它会处理一些大的HTTP请求比如文件的上传下载其他的请求会反向代理给Gitlab Rails应用) logrotate日志文件管理工具 postgresql数据库 redis缓存数据库 sidekiq用于在后台执行队列的任务 unicornGitlab Rails应用是托管在这个服务器上面的 四、Gitlab的优点
git是分布式的svn不是 git分布式本地就可以用可以随便保存各种历史痕迹不用担心污染服务器连不上服务器也能提交代码、查看log。 GIT分支和SVN的分支不同 分支在SVN中实际上是版本库中的一份copy而git一个仓库是一个快照所以git 切换、合并分支等操作更快速。 git有一个强大的代码仓库管理系统 – gitlab 可以很方便的管理权限、代码review创建、管理project 五、Gitlab环境部署
一安装部署
1、主机名设置
[rootlocalhost ~]# hostname gitlab
[rootlocalhost ~]# bash 2、安装依赖包
[rootgitlab ~]# yum -y install curl openssh-server openssh-clients postfix cronie policycoreutils-python 3、启动postfix并设置开机自启
[rootgitlab ~]# systemctl start postfix
[rootgitlab ~]# systemctl enable postfix 4、设置防火墙
[rootgitlab ~]# systemctl stop firewalld
[rootgitlab ~]# iptables -F
[rootgitlab ~]# setenforce 0 5、下载安装gitlab rpm包
清华开源镜像站清华大学开源软件镜像站 | Tsinghua Open Source Mirror [rootgitlab ~]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-11.11.3-ce.0.el7.x86_64.rpm [rootgitlab ~]# rpm -ivh gitlab-ce-11.11.3-ce.0.el7.x86_64.rpm 6、修改配置文件/etc/gitlab/gitlab.rb生产环境下可以跟据需求修改
[rootgitlab ~]# vim /etc/gitlab/gitlab.rb 13 external_url http://192.168.200.111 7、重新加载配置文件
[rootgitlab ~]# gitlab-ctl reconfigure [rootgitlab ~]# gitlab-ctl restart [rootgitlab ~]# netstat -lnpt | grep :80 启动gitlib-ctl start 关闭gitlab-ctl stop 重启gitlab-ctl restart 重载配置gitlab-ctl reconfigure 查看状态gitlab-ctl status 8、查看gitlab版本
[rootgitlab ~]# head -1 /opt/gitlab/version-manifest.txt 二Web操作
1、浏览器登录 GitLab输入 http://192.168.100.131
输入密码 2、密码需要八位数 3、登录root12345678 4、登录成功后即可进入 GitLab 首页 5、创建新的项目 6、创建名称和权限 7、添加readme 8、创建测试内容Its gitlab test而后点绿色键添加 三测试
1、客户机测试
[rootlocalhost ~]# hostname jenkins[rootlocalhost ~]# bash[rootjenkins ~]# git config --global user.name jenkins[rootjenkins ~]# git config --global user.email jenkinstest.com[rootjenkins ~]# git config --global color.ui true[rootjenkins ~]# git config --list[rootjenkins ~]# git clone http://192.168.200.111/root/huyang.git[rootjenkins ~]# ls huyang/[rootjenkins ~]# cat huyang/README.md 增加内容测试 获取删除之前的内容重新克隆 2、设置发邮件功能
1修改配置文件
[rootgitlab ~]# vim /etc/gitlab/gitlab.rb 2#修改gitlab配置的发信人 3重新加载配置并重启服务
[rootgitlab ~]# gitlab-ctl reconfigure [rootgitlab ~]# gitlab-ctl restart 4测试邮件
[rootgitlab ~]# gitlab-rails console -e production
irb(main):001:0 Notify.test_email(13363571949163.com, Message Subject, Message Body).deliver_now 邮箱通知 5web设置邮箱发送邮箱提醒 邮箱通知