一、查看Linux系統版本確認gitlab需要使用的安裝包類型
cat /etc/redhat-release
二、安裝 curl,policycoreutils-python,openssh-server服務
在CentOS系統上安裝所需的依賴:ssh,防火牆,postfix(用於郵件通知) ,wget,以下這些命令也會打開系統防火牆中的HTTP和SSH端口訪問。
yum install -y curl policycoreutils-python openssh-server
三、啓動sshd服務,並激活開機啓動
systemctl enable sshd
systemctl start sshd
四、防火牆允許http服務通過,如果防火牆沒有啓動需要啓動防火牆systemctl start firewalld
firewall-cmd --permanent --add-service=http
systemctl reload firewalld
systemctl start firewalld
五、安裝Postfix發送通知郵件,啓動postfix服務,並激活開機啓動
yum install postfix
systemctl enable postfix
systemctl start postfix
六、獲取GitLab-ee(企業版·免費試用)或Gitlab-ce(社區版·免費)軟件包yum源
關於gitlab-ee和gitlab-ce,二者是基於同樣的核心代碼進行開發,只是gitlab-ee功能更強大,但需要付費使用,有30天試用期。但試用期過後如果不付費,它就跟gitlab-ce功能是完全一樣的,只是需要付費的功能無法再繼續使用而已,所以這兩個版本可以隨意選擇安裝,但如果將來有付費的打算,直接安裝gitlab-ee版本是個有遠見的選擇。當然,即使不付費,gitlab-ee使用上和gitlab-ce沒有任何區別。
所以接下來的操作我們就以安裝gitlab-ee爲例進行。
企業版:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | bash
curl命令執行完成後,會在/etc/yum.repos.d目錄下生成 gitlab_gitlab-ee.repo 或gitlab_gitlab-ce.repo文件
七、修改gitlab_gitlab-ee.repo文件
把repo_gpgcheck屬性爲0,以及baseurl屬性爲清華大學的開源鏡像站地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ee/yum/el7
配置如下圖 :
修改完成後再刷新yum源:
yum clean all
yum yum makecache
解釋:
注意事項以及該文件關鍵鍵的介紹:
1.gitlab_gitlab-ee和gitlab_gitlab-ee-source對應的地址都要換
2.name是倉庫的名字
3.baseurl字段是倉庫的url,也就是倉庫具體的訪問路徑,就是通過這個選項告知yum,倉庫在哪。這裏可以指明多個url,如果寫了多個url,yum將遵循failovermethod字段進行使用
4.enabled字段指明瞭該url是否啓用,0爲不啓用,默認爲1
5.gpgcheck字段指明瞭是否檢查rpm包的簽名信息、完整性信息,0爲不啓用,1爲啓用
(注意:如果啓用這個字段,也就是爲1時,如果沒有gpgkey時,檢查很可能無法通過。我們可以在命令行中使用-- nogpgcheck選項禁止檢查gpg)
6.repo_gpgcheck指明瞭是否檢查元數據信息文件的簽名信息與完整性,0爲不啓用,1爲啓用
7.gpgkey=url指明瞭密鑰文件的url路徑,有了這個密鑰才能檢查各種完整信息。
8.由於gpgkey對應的地址需要翻牆所以gpgcheck也需要設置爲0,如果你服務器不需要翻牆可以不用使用默認值1。
9.https://mirrors.tuna.tsinghua.edu.cn是國內清華大學開源鏡像站,避免yum install可能會因爲網絡原因導致失敗。
八、安裝gitlab-ee(最新版本)
EXTERNAL_URL地址是對應的訪問你gitlab的地址
EXTERNAL_URL="http://172.34.57.205" yum install -y gitlab-ee
當顯示如下圖則安裝成功
默認安裝最新版本,如果需要安裝指定的版本,可以到清華大學開源鏡像站下載指定版本的rpm包。通過rmp -ivh gitlab-ee-10.6.2-ee.0.el7.x86_64.rpm 進行安裝,注意同樣需要先安裝yum install policycoreutils-python,openssh-server postfix -y 服務。
九、刷新gitlab配置和啓動
gitlab-ctl reconfigure
gitlab-ctl restart
訪問你的ip地址可以看到下圖,第一次登錄需要修改密碼
十、若你的服務器已經安裝了nginx可能會發生端口衝突,這時候需要修改端口號
修改默認端口:需要放開/etc/gitlab/gitlab.rb文件裏面nginx[‘listen_port’]和nicorn[‘port’]註釋並設置端口
nginx['listen_port'] = 8888
unicorn['port'] = 8887
vim /etc/gitlab/gitlab.rb打開配置文件,修改如下
防火牆添加端口
firewall-cmd --zone=public --add-port=8888/tcp --permanent
firewall-cmd --zone=public --add-port=8887/tcp --permanent
firewall-cmd --reload
設置完後重啓gitlab:
gitlab-ctl reconfigure
gitlab-ctl restart