Linux系统下搭建Gitlab服务器
<p>GitLab有社区版(CE) 和企业版(EE),社区版是免费,对绝大部分公司来说功能是足够用了 ,在企业内部搭建,可以创建私有项目。</p><p>下面介绍在CentOS7上安装gitlab-ce社区版的步骤</p>
<p>1. 安装前准备</p>
<p>在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget(用于从外网上下载插件)</p>
<p>以上这些可以不用考虑安装,因为CentOS7中已经自带安装好了ssh,防火墙,wget</p>
<p>配置:建议CPU2核,内存4G以上,因为gitlab对系统要求比较高,启动后占用很大内存,否则访问会报502错误</p>
<p>2. 添加gitlab镜像源并安装gitlab服务器</p>
<p>镜像地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.1.2-ce.0.el7.x86_64.rpm</p>
<p>添加gitlab镜像</p>
<div class="cnblogs_code">
<pre>wget https:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.1.2-ce.0.el7.x86_64.rpm</span></pre>
</div>
<p>镜像有点大,下载比较慢,根据网速快慢,需要等几分钟或者十几分钟</p>
<p>3. 安装gitlab</p>
<p>安装rpm包,安装命令:</p>
<div class="cnblogs_code">
<pre>rpm -ivh gitlab-ce-<span style="color: rgba(128, 0, 128, 1)">13.1</span>.<span style="color: rgba(128, 0, 128, 1)">2</span>-ce.<span style="color: rgba(128, 0, 128, 1)">0</span>.el7.x86_64.rpm</pre>
</div>
<p>安装过程需要些时间,安心等待,如果出现下图,则说明安装成功。</p>
<p><img src="https://img2020.cnblogs.com/blog/1471321/202101/1471321-20210128162626916-1851599237.png"></p>
<p>4. 修改gitlab配置文件,指定服务器ip和自定义端口:</p>
<p>输入命令编辑配置文件:vim /etc/gitlab/gitlab.rb</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">#修改访问URL
#格式:external_url </span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">http://ip:端口</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(0, 0, 0, 1)">
external_url </span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">http://192.168.80.128:8081</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(0, 0, 0, 1)">
#配置时区(可以不用配置)
gitlab_rails[</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">time_zone</span><span style="color: rgba(128, 0, 0, 1)">'</span>] = <span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">Asia/Shanghai</span><span style="color: rgba(128, 0, 0, 1)">'</span></pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1471321/202101/1471321-20210128175748556-1365061562.png"></p>
<p>ps:注意这里设置的端口不能被占用,默认是8080端口,如果8080已经使用,请自定义其它端口,并在防火墙设置开放相对应得端口</p>
<p>配置完以后还需要修改一处,去掉unicorn['port']<code class="language-python"><span class="token operator">=<span class="token number">8080</span></span></code>前面的注释#,并修改下端口号,注意和上面端口区分开。</p>
<p><img src="https://img2020.cnblogs.com/blog/1471321/202101/1471321-20210128174159200-1887278541.png"></p>
<p>如上, 默认端口是8080, 一般都会被占用, 所以修改为自己需要的端口;</p>
<p>进入编辑器后按“i”键进入编辑状态,编辑后按Esc键退出编辑状态,并输入命令:wq保存,或输入:wq! 强制保存。</p>
<p>5. 防火墙开放端口</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)"># 开放上面配置的</span>external_url中的 <span>8081端口 <br>firewall</span>-cmd --zone=<span style="color: rgba(0, 0, 255, 1)">public</span> --add-port=<span style="color: rgba(128, 0, 128, 1)">8081</span>/tcp --permanent</pre>
</div>
<p>6. 重启防火墙</p>
<div class="cnblogs_code">
<pre>firewall-cmd --reload</pre>
</div>
<p>7. 查看端口号是否开启</p>
<div class="cnblogs_code">
<pre>firewall-cmd --query-port=<span style="color: rgba(128, 0, 128, 1)">8081</span>/tcp</pre>
</div>
<p>8. 重置Gitlab(让修改后的配置生效)</p>
<div class="cnblogs_code">
<pre>gitlab-ctl reconfigure</pre>
</div>
<p>第一次重置过程需要大概几分钟时间,安心等待</p>
<p>9. 重启Gitlab</p>
<div class="cnblogs_code">
<pre>gitlab-ctl restart</pre>
</div>
<p>提示 "ok: run:"表示启动成功</p>
<p><img src="https://img2020.cnblogs.com/blog/1471321/202101/1471321-20210128165204775-356281021.png"></p>
<p>GitLab服务端常用命令:</p>
<div class="cnblogs_code">
<pre>gitlab-<span style="color: rgba(0, 0, 0, 1)">ctl start # 启动所有 gitlab 组件;
gitlab</span>-<span style="color: rgba(0, 0, 0, 1)">ctl stop # 停止所有 gitlab 组件;
gitlab</span>-<span style="color: rgba(0, 0, 0, 1)">ctl restart # 重启所有 gitlab 组件;
gitlab</span>-<span style="color: rgba(0, 0, 0, 1)">ctl status # 查看服务状态;
gitlab</span>-<span style="color: rgba(0, 0, 0, 1)">ctl reconfigure # 刷新配置文件;
vim </span>/etc/gitlab/<span style="color: rgba(0, 0, 0, 1)">gitlab.rb # 修改默认的配置文件;
gitlab</span>-rake gitlab:check SANITIZE=<span style="color: rgba(0, 0, 255, 1)">true</span> --<span style="color: rgba(0, 0, 0, 1)">trace # 检查gitlab;
gitlab</span>-ctl tail # 查看日志;</pre>
</div>
<p>10. 访问Gitlab页面</p>
<p>如果没有域名,直接输入服务器ip和指定端口进行访问</p>
<p>初始管理员账户: root </p>
<p>注:首次访问时,会自动进入管理员密码设置页面,重新设置下密码,管理员默认账户为root</p>
<p>登录后可进行语言设置:</p>
<p>Settings -> Preferences -> Localization -> Language -> 简体中文</p>
<p><img src="https://img2020.cnblogs.com/blog/1471321/202101/1471321-20210128180305187-369161029.png"></p>
<p>11. 502错误</p>
<p>如果确定上面配置步骤没问题,但是访问GitLab还报502错误,这是虚拟机内存不够导致的,首先保证Gitlab可用运行内存大于4G,端口未被占用,否则跑不起来</p>
<p>12. 添加用户</p>
<p>当管理员在Gitlab新建用户后,系统会自动发送邮件到用户邮箱,用户通过点击邮件链接可自己配置密码;</p>
<p>ps: 创建用户后,用户将收到邮件,邮件可能被拉黑,请到垃圾邮箱中查阅;</p>
<h3>Gitlab权限管理</h3>
<div class="postbody">
<div id="cnblogs_post_body" class="blogpost-body">
<p>Gitlab用户在组中有五种权限:Guest、Reporter、Developer、Master(Maintainer)、Owner</p>
<p>Guest:可以创建issue、发表评论,不能读写版本库<br data-filtered="filtered">Reporter:可以克隆代码,不能提交,QA、PM可以赋予这个权限<br data-filtered="filtered">Developer:可以克隆代码、开发、提交、push,RD可以赋予这个权限<br data-filtered="filtered">Master:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心RD负责人可以赋予这个权限<br data-filtered="filtered">Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组leader可以赋予这个权限</p>
<p>Gitlab中的组和项目有三种访问权限:Private、Internal、Public</p>
<p>Private:只有组成员才能看到<br data-filtered="filtered">Internal:只要登录的用户就能看到<br data-filtered="filtered">Public:所有人都能看到<br data-filtered="filtered">开源项目和组设置的是Internal</p>
</div>
</div><br><br>
来源:https://www.cnblogs.com/li150dan/p/14340247.html
頁:
[1]