Gitlab−CEの導入
Gitlab CEはGitlabのCommunityバージョンです。詳細は、Gitlabの製品比較を参照してください。
前提条件
OS:CentOS7
Apacheによるリバプロです。
nginxは使いません。
Gitlab install
yum install -y curl policycoreutils openssh-server openssh-clients
curl -x proxy.ipnoc.net:3128 -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash
yum install -y gitlab-ce
vim /etc/gitlab/gitlab.rb
external_url 'https://xxx.xx.xx' #外から見たGitLabのURL
gitlab_rails['time_zone'] = 'Asia/Tokyo' #JSTにする
unicorn['worker_processes'] = 1 #プロセス制限 スペックがどうしても足りない時
postgresql['shared_buffers'] = "1024MB" #使用メモリ スペックがどうしても足りない時
gitlab_workhorse['listen_network'] = "tcp" #デフォルトはSocket接続だがリバプロできないのでTCPに変更
gitlab_workhorse['listen_umask'] = 000
gitlab_workhorse['listen_addr'] = "127.0.0.1:8181" #apache で指定するのでメモ
nginx['enable'] = false #Apacheを使うので Nginx はOFF
#Git データを外付けに移動させる
git_data_dirs({
"default" => {
"pathName" => "/mnt/nfs-01/git-data" #マウントしたUSBの場所を指定
}
})
RequestHeader set X_FORWARDED_PROTO 'https'
RequestHeader set X-Forwarded-Ssl on
vim /etc/httpd/conf.d/xxx.xxx.conf
<Location /gitlab>
#apache2.4.x
Require all granted
ProxyPassReverse http://127.0.0.1:8181
ProxyPassReverse http://xxxx.xx.xx/
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f [OR]RewriteCond %{REQUEST_URI} ^/uploads/.*
RewriteRule .* http://127.0.0.1:8181%{REQUEST_URI} [P,QSA,NE]</Location>
※注意事項:移動先のデータのHDDのフォーマットについて正しくない場合、正常に認識しない模様。リンクはだめだぜ
上記設定後、以下のコマンドで設定をリセット、Gitlabのアップデート、再起動のコマンドを叩く。(まぁ、本当はupgradeは不要ですけどね)
gitlab-ctl reconfigure && gitlab-ctl upgrade && gitlab-ctl restart
下のコマンドはGitlabの実行ログが見れる。 | grep error でエラーログにしほりこみ可能。すごく助かる。
gitlab-ctl tail
apacheの再起動
http://xxx.xx.xx/gitlab にアクセスして管理者のパスワードを登録
ID:root
パスワードは登録したものになります。
以上!
コメント