一、准備工作
1.准備
在CentOS系統上安裝所需的依賴:ssh,防火牆,postfix(用於郵件通知) ,wget,以下這些命令也會打開系統防火牆中的HTTP和SSH端口訪問。需要root權限下,可使用su root進入root權限
2.安裝ssh
sudo yum install -y curl policycoreutils-python openssh-server
注:
錯誤提示:Error: Unable to find a match: policycoreutils-python錯誤
解決方案:產生這個錯誤的原因是未配置yum源,所以需要安裝 EPEL 源
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
你要用python2還是python3?python2-setuptools或者python3-setuptools
改為:yum install -y curl policycoreutils-python3 openssh-server
3.將SSH服務設置成開機自啟動
systemctl enable sshd
4.啟動ssh服務
systemctl start sshd
5.查看是否安裝了防火牆,一般而言,是已經安裝了的
systemctl status firewalld
未安裝通過下列命令安裝、啟動
yum install firewalld systemd -y
service firewalld start
6.添加http服務到firewalld,pemmanent表示永久生效,若不加--permanent系統下次啟動后就會失效。
firewall-cmd --permanent --add-service=http
重啟防火牆
systemctl reload firewalld
7.裝Postfix以發送通知郵件
yum install postfix
注意:在centos7里postfix是系統自帶的,但是centos7以前的版本是默認不帶的。自帶可以省略這一步。
8.啟動postfix
systemctl start postfix
9.檢查系統中是否已經安裝wget,使用 wget -V 若出現下圖wget相關版本描述則說明系統中已經安裝wget 若報系統找不到命令說明wget未安裝
未安裝使用 yum -y install wget 安裝
二、安裝
1.添加gitlab鏡像
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm (安裝其他版本可以自行查找)
2.安裝gitlab
rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
3.修改gitlab配置文件指定服務器ip和自定義端口
vim /etc/gitlab/gitlab.rb
external_url 'http://gitlab.example.com' 直接注釋掉,或者,你沒有域名,改為你的服務器或者虛擬機地址
進入編輯器后按“i”鍵進入編輯狀態,修改完畢后,按ESC鍵退出編輯狀態
然后退出並保存,命令輸入“:wq”,如果無法保存可以通過“:wq!”強制保存退出。
ps:注意這里設置的端口不能被占用,默認是8080端口,如果8080已經使用,請自定義其它端口,並在防火牆設置開放相對應得端口
4.重置並啟動GitLab
gitlab-ctl reconfigure (需要一定時間)
重啟gitlab
gitlab-ctl restart
啟動gitlab
gitlab-ctl start
關閉gitlab
gitlab-ctl stop
官方網址:https://about.gitlab.com/install/#centos7
5.docker安裝gitlab
docker run --detach \
--hostname 主機ip \
--publish 443:443 --publish 8080:8080 \
--name gitlab \
--restart always \
--v $GITLAB_HOME/config:/etc/gitlab:Z \
--v $GITLAB_HOME/logs:/var/log/gitlab:Z \
--v $GITLAB_HOME/data:/var/opt/gitlab:Z \
--shm-size 256m \
registry.gitlab.cn/omnibus/gitlab-jh:latest
啟動容器
docker start gitlab
三、卸載gitlab
一、停止gitlab
sudo gitlab-ctl stop
二、卸載gitlab(這塊注意了,看看是gitlab-ce版本還是gitlab-ee,還是gitlab-jh版本,別寫錯誤了)
sudo rpm -e gitlab-ce
三、查看gitlab進程
ps -ef|grep gitlab
殺掉第一個守護進程(runsvdir -P /opt/gitlab/service log)
kill -9 4473
再次查看gitlab進程是否存在
四、刪除gitlab文件
find / -name *gitlab*|xargs rm -rf 刪除所有包含gitlab的文件及目錄
find / -name gitlab |xargs rm -rf
刪除gitlab-ctl uninstall時自動在root下備份的配置文件(ls /root/gitlab* 看看有沒有,有也刪除)