作者:我是80初 | 来源:互联网 | 2024-11-17 17:42
本文详细介绍了如何在CentOS7及其衍生发行版(如RedHat,Oracle,ScientificLinux7)上安装和完全卸载GitLab。包括安装必要的依赖关系、配置防火墙、安装GitLab软件包以及常见问题的解决方法。
安装 GitLab
1. 安装并配置必要的依赖关系
在 CentOS 7 及其衍生发行版(如 Red Hat, Oracle, Scientific Linux 7)上,以下命令还会在系统防火墙中打开 HTTP 和 SSH 访问。
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
接下来,安装 Postfix 以发送通知邮件。如果您想使用其他解决方案发送电子邮件,请跳过此步骤并在安装 GitLab 后配置外部 SMTP 服务器。(如果不发送邮件,这一步可以跳过)
2. 添加 GitLab 软件包存储库并安装软件包
GitLab 提供两种版本:社区版(CE)和企业版(EE)。我们在这里安装社区版(CE),它是免费的。
首先,添加 GitLab 软件包存储库:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
接下来,安装 GitLab 软件包。将 `http://gitlab.example.com` 更改为您的 GitLab 实例的 URL。安装将自动在该 URL 处配置并启动 GitLab。安装后,HTTPS 需要额外的配置。
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce
3. 浏览到主机名并登录
首次访问时,您将被重定向到密码重置屏幕。提供初始管理员账户的密码,您将被重定向回登录屏幕。使用默认账户的用户名 `root` 登录。
4. 安装过程中问题处理
执行到 `sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce` 这个步骤时,可能会卡住。
解决方案:
- 等待一段时间(10分钟)。
- 按住 CTRL+C 强制结束。
- 运行:`sudo systemctl restart gitlab-runsvdir`。
- 再次执行:`sudo gitlab-ctl reconfigure`。
如果访问时报 502 错误
可能性之一是 unicorn 服务与 tomcat 端口冲突。可以通过配置 unicorn 使用不同的端口来解决。
vi /etc/gitlab/gitlab.rb
unicorn['port'] = 9090
然后重启配置并稍等一会儿,再次访问即可。
安装/启动 postfix 时报错
[root@~]# systemctl start postfix
Job for postfix.service failed because the control process exited with error code. See "systemctl status postfix.service" and "journalctl -xe" for details.
解决方法:修改 `/etc/postfix/main.cf` 的设置。
inet_protocols = ipv4
inet_interfaces = all
GitLab 常用命令
sudo gitlab-ctl start # 启动所有 GitLab 组件
sudo gitlab-ctl stop # 停止所有 GitLab 组件
sudo gitlab-ctl restart # 重启所有 GitLab 组件
sudo gitlab-ctl status # 查看服务状态
sudo gitlab-ctl reconfigure # 重新配置并启动服务
sudo vim /etc/gitlab/gitlab.rb # 修改默认配置文件
gitlab-rake gitlab:check SANITIZE=true --trace # 检查 GitLab
sudo gitlab-ctl tail # 查看日志
完全卸载 GitLab
1. 停止 GitLab
sudo gitlab-ctl stop
2. 卸载 GitLab(注意区分 CE 和 EE 版本)
sudo rpm -e gitlab-ce
3. 查看 GitLab 进程
ps -ef | grep gitlab
kill -9 [进程ID]
4. 删除 GitLab 文件
find / -name *gitlab* | xargs rm -rf
find / -name gitlab | xargs rm -rf
rm -rf /root/gitlab*
通过以上步骤,您可以彻底卸载 GitLab。