
# 手工部署GitLab（CentOS7.2）
#### 简介
本文主要介绍了在华为云上如何使用弹性云服务器的Linux实例手工部署GitLab。GitLab是一个开源的版本管理系统，使用Git作为代码管理工具。该指导具体操作以CentOS 7.2 64位操作系统为例。
#### 前提条件
- 部署GitLab的实例内存要求不小于4GiB。
- 弹性云服务器所在安全组添加了如下表所示的安全组规则，具体步骤参见[为安全组添加安全组规则](https://support.huaweicloud.com/usermanual-vpc/zh-cn_topic_0030969470.html)。
  表1安全组规则 
  | 方向  | 优先级 | 策略 | 类型   | 协议端口    | 源地址       |
  |:---|:---|:---|:---|:---|:---|
  | 入方向 | 1   | 允许 | IPv4 | TCP: 80 | 0.0.0.0/0 |
     
  
 
#### 操作步骤
1. 登录弹性云服务器。 
   具体操作请参见[Linux ECS登录方式概述](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0013771089.html)。
   
   
2. 为了更好地获取和更新系统和软件，建议您更新镜像源为华为云镜像源，详细操作，请参见[如何使用华为云开源镜像配置yum源(x86_64和鲲鹏)？](https://support.huaweicloud.com/ecs_faq/zh-cn_topic_0118948562.html)。
3. 安装相关依赖包。 
   1. 执行以下命令，安装相关依赖包。
      ```
      sudo yum install -y curl policycoreutils-python openssh-server
      ```
      
   
   2. 依次执行以下命令，设置SSH开机自启动并启动SSH服务。
      ```
      sudo systemctl enable sshd
      sudo systemctl start sshd
      ```
      
   
   
   
   
4. 安装Postfix来发送通知邮件。 
   1. 依次执行以下命令，安装Postfix。
      ```
      sudo yum install postfix
      ```
      
   
   2. 依次执行以下命令，设置Postfix开机自启动并启动Postfix服务。
      ```
      sudo systemctl enable postfix
      sudo systemctl start postfix
      ```
      
   
   
   
   
5. 添加GitLab软件包仓库并安装软件包。 
   1. 执行以下命令，添加[GitLab软件包仓库](https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh)。
      ```
      curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
      ```
      
   
   2. 执行以下命令，安装GitLab。
      ```
      sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce
      ```
      其中，将*" EXTERNAL_URL"*的值设置为访问GitLab服务器的地址，可以设置为服务器的公网IP地址，也可以设置为域名。
      ![](https://support.huaweicloud.com/bestpractice-ecs/public_sys-resources/note_3.0-zh-cn.png)
      - 执行命令后可在回显信息中查看软件的下载速度和系统预估的下载完成时间。
      
      - 可能因为网络原因，会出现无法添加GitLab软件包仓库的问题，建议您多尝试几次。
      
      - 如果下载速度持续比较缓慢，可以尝试通过"<https://tool.chinaz.com/dns>"查询"github.com"的响应IP地址，选择TTL值较小的IP。然后在服务器的"hosts"文件中添加相应的本地DNS解析。
       
      回显如下类似信息，表示GitLab已经安装成功。
      ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002063613064.png "点击放大")
      
   
   
   
   
6. 浏览器访问测试。 
   使用浏览器访问"http://*服务器弹性公网IP地址*"，显示如下页面，说明环境搭建成功。
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002099937349.png "点击放大")
   
   
 
#### 后续操作
1. 获取GitLab的登录密码。
   执行以下命令获取GitLab的登录密码：
   ```
   sudo cat /etc/gitlab/initial_root_password
   ```
   回显如下类似信息：
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002101554841.png "点击放大")
   ![](https://support.huaweicloud.com/bestpractice-ecs/public_sys-resources/caution_3.0-zh-cn.png)
   由于保存默认密码的文件将在首次配置运行24小时后自动删除，建议您首次登录之后，立即修改初始密码。
   
2. 登录GitLab。 在浏览器的地址栏中，输入"http://*服务器弹性公网IP地址*"即可进入GitLab的登录界面。
   首次登录使用用户名root，密码为[1]获取的密码。
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002099830477.png "点击放大")
   
3. 修改初始密码
   1. 登录GitLab后，选择页面左上角的用户头像，在弹出菜单中选择"Preferences"。 ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002100079553.png "点击放大")
      
   
   2. 在"User Settings"页面中，选择左侧导航栏的"Password"。 ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002100078577.png "点击放大")
      
   
   3. 在页面中输入当前使用密码，新密码及确认新密码后，单击"Save Password"。 ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002100079165.png "点击放大")
      
    
如果您想了解更多的GitLab操作，例如GitLab常用命令、数据备份、配置选项、用户管理、与其他服务集成、故障排除等，请参见[GitLab官方文档](https://docs.gitlab.cn/)。
