一、完全卸载删除gitlab
1、停止gitlab
gitlab-ctl stop
2、卸载gitlab(注意这里写的是gitlab-ce)
rpm -e gitlab-ce
3、查看gitlab进程
ps aux | grep gitlab
4、杀掉第一个进程(就是带有好多.............的进程)
kill -9 18777
杀掉后,在ps aux | grep gitlab确认一遍,还有没有gitlab的进程
5、删除所有包含gitlab文件
find / -name gitlab | xargs rm -rf
二、安装
1、安装和配置必要的依赖项。
sudo yum install curl policycoreutils openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
(1)可能会出现FirewallD is not running问题:解决如下
(1.1)执行firewall-cmd --zone=public --add-port=8080/tcp --permanent 出现如图:
意思是:FielWald没有运行
(1.2)通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启
(1.3)通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。
(1.4)再通过systemctl status firewalld查看firewalld状态,显示running即已开启了。
(1.5)再次执行执行firewall-cmd --permanent --zone=public --add-port=8888/tcp,提示success,表示设置成功,就可以继续后面的设置了。
(1.6)如果要关闭防火墙设置,可通过systemctl stop firewalld这条指令来关闭该功能。
2、添加GitLab仓库,并安装到服务器上
- 方法一
推荐
:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
- 方法二: 手动下载文件,然后使用rpm命令安装
curl -LJO https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-XXX.rpm/download
rpm -i gitlab-ce-XXX.rpm
3、启动GitLab
sudo gitlab-ctl reconfigure
可能遇到的问题:停留在action run 不动
解决办法:
(1)先强制结束:按住CTRL+C强制结束
(2)运行:sudo systemctl restart gitlab-runsvdir
(3)再次执行:sudo gitlab-ctl reconfigure 。成功!!!
4、打开浏览器访问,默认80端口
- 首次访问需要设置root密码
- 关闭注册功能
Admin Area > Settings >Sign-up Restrictions
取消Sign-up enabled
勾选
5、常用配置
- 修改内置nginx端口号,默认是80
建议修改
,修改vim var/opt/gitlab/nginx/conf/gitlab-http.conf
server {
listen *:8222;
......
- gitlab本身采用80端口,配置GitLab的URL,修改
vim /etc/gitlab/gitlab.rb
external_url 'http://127.0.0.1:8222'
每次重新配置,都需要执行sudo gitlab-ctl reconfigure
使之生效。