一, 服務器快速搭建gitlab方法
可以參考gitlab中文社區 的教程
centos7安裝gitlab:https://www.gitlab.cc/downloads/#centos7
centos6安裝gitlab:https://www.gitlab.cc/downloads/#centos6
如下方法按照官網來操作,手工安裝過於麻煩。當前測試平台為小鳥雲的三個月centos 7測試機.
1. 安裝配置依賴項
如想使用Postfix來發送郵件,在安裝期間請選擇’Internet Site’. 您也可以用sendmai或者 配置SMTP服務 並 使用SMTP發送郵件. 在 Centos 6 和 7 系統上, 下面的命令將在系統防火牆里面開放HTTP和SSH端口.
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
這里可以自己yum 一個iptables做處理,一樣的效果。 2. 添加GitLab倉庫,並安裝到服務器上
curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash sudo yum install gitlab-ce
如果你不習慣使用命令管道的安裝方式, 你可以在這里下載 安裝腳本 或者 手動下載您使用的系統相應的安裝包(RPM/Deb) 然后安裝
curl -LJO https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-XXX.rpm rpm -i gitlab-ce-XXX.rpm
3. 啟動GitLab
- sudo gitlab-ctl reconfigure
注意事項以及異常故障排查:
1,按照該方式,我安裝了一個確實沒問題,只不過是英文版。沒有經過漢化。
2,默認安裝登錄需要重置root密碼。可以自己單獨設置一個復雜密碼后登錄。
3,gitlab本身采用80端口,如安裝前服務器有啟用80,安裝完訪問會報錯。需更改gitlab的默認端口。 修改vim /etc/gitlab/gitlab.rb: external_url ‘http://localhost:90’
4,unicorn本身采用8080端口,如安裝前服務器有啟用8080,安裝完訪問會報錯。需更改unicorn的默認端口。 修改 /etc/gitlab/gitlab.rb: unicorn[‘listen’] = ‘127.0.0.1’ unicorn[‘port’] = 3000
5,每次重新配置,都需要執行sudo gitlab-ctl reconfigure 使之生效。
6,日志位置:/var/log/gitlab 可以進去查看訪問日志以及報錯日志等,供訪問查看以及異常排查。 gitlab-ctl tail #查看所有日志 gitlab-ctl tail nginx/gitlab_access.log #查看nginx訪問日志
二,gitlab中文漢化 1,需要下載漢化包,我們這里直接到去git一個。如果沒安裝git的請自行yum或apt-get 一個git。 比如我們現在到/usr/local/src,執行如下命令去git clone包:
- git clone https://github.com/larryli/gitlabhq.git
2,停止當前gitlab
- gitlab-ctl stop
- \cp /usr/local/src/gitlabhq/* /opt/gitlab/embedded/service/gitlab-rails/ -rf
其中有兩個提示我們可以忽略: cp: cannot overwrite non-directory `/opt/gitlab/embedded/service/gitlab-rails/log’ with directory `./log’ cp: cannot overwrite non-directory `/opt/gitlab/embedded/service/gitlab-rails/tmp’ with directory `./tmp’ 好了,漢化完成,重新啟動gitlab,漢化完成。
三,日常管理
gitlab-ctl start|stop|status|restart 比如查看狀態:
- [root@21yunwei gitlab]# gitlab-ctl status
- run: gitlab-workhorse: (pid 19922) 665s; run: log: (pid 19159) 725s
- run: logrotate: (pid 19179) 723s; run: log: (pid 19178) 723s
- run: nginx: (pid 19166) 724s; run: log: (pid 19165) 724s
- run: postgresql: (pid 19026) 760s; run: log: (pid 19025) 760s
- run: redis: (pid 18943) 766s; run: log: (pid 18942) 766s
- run: sidekiq: (pid 19149) 732s; run: log: (pid 19148) 732s
- run: unicorn: (pid 20257) 642s; run: log: (pid 19116) 734s