在CentOS 7上安装和配置GitLab涉及多个步骤,包括基础环境的设置、依赖的安装、GitLab的下载与安装、以及必要的配置,以下是详细的步骤说明:
一、基础环境准备
1、更新系统包管理器:确保你的系统是最新的,通过运行以下命令来更新系统包:
sudo yum update -y
2、安装必要的依赖:GitLab需要一些基础依赖,如curl、policycoreutils-python、openssh-server等,可以通过以下命令安装:
sudo yum install -y curl policycoreutils-python openssh-server
3、启动并启用SSH服务:
sudo systemctl enable sshd sudo systemctl start sshd
4、配置IPv4转发(可选,但推荐):编辑/etc/sysctl.conf
文件,添加或修改以下行:
net.ipv4.ip_forward = 1
然后重启网络服务:
sudo systemctl restart network
5、安装并启动防火墙:
sudo yum install firewalld systemd -y sudo systemctl enable firewalld sudo systemctl start firewalld
6、添加HTTP和HTTPS服务到防火墙:
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
二、安装Postfix以发送邮件
GitLab使用邮件进行通知和警告,因此需要安装邮件服务器,这里我们使用Postfix:
1、安装Postfix:
sudo yum install postfix -y
2、启动并启用Postfix服务:
sudo systemctl enable postfix sudo systemctl start postfix
3、配置Postfix以使用IPv4:编辑/etc/postfix/main.cf
文件,将inet_protocols
设置为ipv4
:
inet_protocols = ipv4
然后重启Postfix服务:
sudo systemctl restart postfix
三、添加GitLab镜像源并安装GitLab
1、添加GitLab镜像源:在/etc/yum.repos.d/
目录下新建一个名为gitlab-ce.repo
的文件,内容如下:
[gitlab-ce] name=Gitlab CE Repository baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/ gpgcheck=0 enabled=1
2、安装GitLab:使用以下命令安装GitLab社区版(CE):
sudo yum install -y gitlab-ce
四、配置GitLab
1、重新配置GitLab:安装完成后,运行以下命令重新配置GitLab:
sudo gitlab-ctl reconfigure
这一步可能需要一些时间,请耐心等待。
2、访问GitLab:安装完成后,你可以通过浏览器访问GitLab的Web界面,默认情况下,GitLab监听80端口,所以你可以通过服务器的IP地址或域名访问它,http://YOUR_SERVER_IP,首次访问时,你需要使用root账户登录,初始密码可以在/etc/gitlab/initial_root_password
文件中查看。
五、创建项目和仓库
1、登录GitLab:使用初始密码登录后,建议立即更改密码。
2、创建项目:登录后,你可以点击页面上的“New project”按钮来创建一个新的项目,填写项目的相关信息,如名称、描述等。
3、创建仓库:在项目中,你可以进一步创建仓库(Repository),用于存储代码。
六、克隆仓库到本地
1、安装Git(如果尚未安装):虽然GitLab本身提供了Git的功能,但你可能还需要在客户端机器上安装Git以便克隆仓库,可以使用以下命令安装Git:
sudo yum install git -y
2、克隆仓库:使用Git命令将远程仓库克隆到本地,假设你的远程仓库URL为http://YOUR_SERVER_IP/YOUR_USERNAME/YOUR_REPO.git
,你可以使用以下命令克隆:
git clone http://YOUR_SERVER_IP/YOUR_USERNAME/YOUR_REPO.git
克隆时会提示你输入GitLab用户的用户名和密码。
七、提交和推送代码
1、提交代码:在本地仓库中进行代码修改后,使用git add .
命令添加更改,然后使用git commit -m "Your commit message"
提交更改。
2、推送代码到远程仓库:使用git push
命令将本地更改推送到远程仓库。
八、常见问题解答
Q1: GitLab安装过程中卡住怎么办?
A1: 如果在安装过程中卡住,可以尝试检查日志文件(通常位于/var/log/gitlab/
目录下)以获取更多信息,确保所有必要的依赖都已正确安装,并且网络连接正常。
Q2: 如何更改GitLab的默认端口号?
A2: 如果需要更改GitLab的默认端口号(如80端口),可以编辑/etc/gitlab/gitlab.rb
文件,找到external_url
配置项进行修改,然后运行sudo gitlab-ctl reconfigure
使更改生效,更改端口号后,需要相应地更新防火墙规则以允许新端口的流量。