Gitlab概述
GitLab是一個利用 Ruby on Rails 開發的開源應用程序,實現一個自托管的Git項目倉庫,可通過Web界面進行訪問公開的或者私人項目。 GitLab擁有與Github類似的功能,能夠瀏覽源代碼,管理缺陷和注釋。可以管理團隊對倉庫的訪問,它非常易於瀏覽提交過的版本並提供一個文件歷史庫, 它還提供一個代碼片段收集功能可以輕松實現代碼復用,便於日后有需要的時候進行查找。
一.官方安裝
官方安裝地址 (centos7)
1.安裝並配置必要的依賴關系
在CentOS 7(和RedHat / 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服務器。
sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix
在Postfix安裝期間,可能會出現一個配置屏幕。選擇“Internet站點”並按回車。使用您的服務器的外部DNS作為'郵件名'並按回車。如果出現其他屏幕,請繼續按回車鍵以接受默認值。
2.添加GitLab軟件包存儲庫並安裝軟件包
添加GitLab軟件包存儲庫。
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
接下來,安裝GitLab軟件包。將`http:// gitlab.example.com`更改為您想要訪問您的GitLab實例的URL。安裝將自動在該URL處配置並啟動GitLab。安裝后HTTPS需要額外的配置。
sudo EXTERNAL_URL="http://gitlab.example.com" yum -y install gitlab-ee
官方安裝 相當的慢。
3.瀏覽到主機名並登錄
第一次訪問時,您將被重定向到密碼重置屏幕。為初始管理員帳戶提供密碼,您將被重定向回登錄屏幕。使用默認帳戶的用戶名root
登錄。
二.使用rpm包安裝
可以rpm安裝下載地址:清華開源網站鏡像站
由於官網安裝實在太慢於是我選擇了 rpm包安裝
版本 10.4.4(強迫症就喜歡連號的😁)
[root@localhost apache-maven-3.3.9]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.4.4-ce.0.el7.x86_64.rpm
#安裝完成出現一個很帥氣的圖案
#查看gitlab的版本
[root@localhost ~]# head -1 /opt/gitlab/version-manifest.txt gitlab-ce 10.4.4
三.gitlab的配置和命令
#先修改個域名,改成自己的域名解析的地址,沒有先不改也可以,我開始沒改也沒錯。 #有說改成自己本機ip的,然后出錯的話在external_url和ip直接加等號(沒試,用的域名) vim /etc/gitlab/gitlab.rb external_url 'http://10.0.0.8' #更新配置(這一步相當的耗時☹) gitlab-ctl reconfigure #查看狀態 gitlab-ctl status #重啟 gitlab-ctl restart ok: run: gitaly: (pid 24115) 0s ok: run: gitlab-monitor: (pid 24131) 1s ok: run: gitlab-workhorse: (pid 24147) 0s ok: run: logrotate: (pid 24165) 1s ok: run: nginx: (pid 24171) 0s ok: run: node-exporter: (pid 24180) 1s ok: run: postgres-exporter: (pid 24192) 0s ok: run: postgresql: (pid 24211) 0s ok: run: prometheus: (pid 24227) 1s ok: run: redis: (pid 24279) 0s ok: run: redis-exporter: (pid 24283) 1s ok: run: sidekiq: (pid 24298) 0s ok: run: unicorn: (pid 24303) 1s #關閉 gitlab-ctl stop #啟動 gitlab-ctl start #監控 gitlab-ctl tail unicorn 監控unicorn日志 gitlab-ctl tail
四.漢化
說明:gitlab中文社區版的項目,v7-v8.8是由Larry Li發起的“GitLab 中文社區版項目”(https://gitlab.com/larryli/gitlab),從 v8.9 之后,@xhang 開始繼續該漢化項目(https://gitlab.com/xhang/gitlab)。
4.1 停止gitlab服務
gitlab-ctl stop
4.2 切換到gitlab漢化包所在的目錄(即步驟二獲取的漢化版gitlab)
cd /root/gitlab
4.3 比較漢化標簽和原標簽,導出 patch 用的 diff 文件到/root下
git diff v10.0.2 v10.0.2-zh > ../10.0.2-zh.diff
4.4 回到/root目錄
cd
4.5 將10.0.2-zh.diff作為補丁更新到gitlab中
yum install patch -y
patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 10.0.2-zh.diff #不停回車
4.6 啟動gitlab
gitlab-ctl start
4.7 重新配置gitlab
gitlab-ctl reconfigure