このページは GitLab CE 8.5.5 を元に書いています。
インストールは、本家のページにアクセスし、GitLab CE を選択、
「Select Operating System」で「Ubintu 14.04」を選び手順通りインストールしていきます。
$ sudo apt-get install curl openssh-server ca-certificates postfix $ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash $ sudo apt-get install gitlab-ce
gitlab.rb を編集し、url と port を設定(port を変更するのは apache と同居させるため)。
タイムゾーンの設定も行っておきます。
## Url on which GitLab will be reachable. ## For more details on configuring external_url see: ## https://gitlab.com/gitlab-org/omnibus-gitlab/blob/629def0a7a26e7c2326566f0758d4a27857b52a3/README.md#configuring-the-external-url-for-gitlab external_url 'https://ydlprog.no-ip.biz:46410/gitlab' ## Note: configuration settings below are optional. ## Uncomment and change the value. ############################ # gitlab.yml configuration # ############################ # gitlab_rails['gitlab_ssh_host'] = 'ssh.host_example.com' gitlab_rails['time_zone'] = 'Asia/Tokyo' # gitlab_rails['gitlab_email_enabled'] = true
external_url は運用方法に合わせて記述します。
# http で運用する場合 external_url 'http://ydlprog.no-ip.biz:46410' # https で運用する場合 external_url 'https://ydlprog.no-ip.biz:46410' # サブディレクトリで運用する場合 external_url 'https://ydlprog.no-ip.biz:46410/gitlab'
Git LFS(Large File Storage)を使う場合は以下の設定もします。
## Git LFS gitlab_rails['lfs_enabled'] = true gitlab_rails['lfs_storage_path'] = "/var/opt/gitlab/git-lfs"
新規に作る場合は、まずはオレオレ証明書の作成します。
external_url で設定したサーバー名で証明書を保存します。
$ openssl genrsa 2048 > server.key $ openssl req -new -key server.key > server.csr $ openssl x509 -days 3650 -req -signkey server.key < server.csr > server.crt $ rm server.csr $ sudo mkdir /etc/gitlab/ssl/ $ sudo mv server.crt /etc/gitlab/ssl/ydlprog.no-ip.biz.crt $ sudo mv server.key /etc/gitlab/ssl/ydlprog.no-ip.biz.key $ sudo chmod 400 /etc/gitlab/ssl/ydlprog.no-ip.biz.*
apache のサイト証明書を使う場合
$ sudo openssl x509 -in /etc/apache2/ssl/apache.pem > server.crt $ sudo openssl rsa -in /etc/apache2/ssl/apache.pem > server.key $ sudo mkdir /etc/gitlab/ssl/ $ sudo mv server.crt /etc/gitlab/ssl/ydlprog.no-ip.biz.crt $ sudo mv server.key /etc/gitlab/ssl/ydlprog.no-ip.biz.key $ sudo chmod 400 /etc/gitlab/ssl/ydlprog.no-ip.biz.*
$ sudo gitlab-ctl reconfigure $ sudo gitlab-ctl reconfigure $ sudo gitlab-ctl start
キャッシュの関係でうまく更新されない場合があるので、reconfigure は2回実行する。
設定した url にアクセスし、初期設定のユーザ(root:5iveL!fe)でログインします。
パスワードを変更します。
新しいパスワードで、ログインし、「Admin Area」を選択。
勝手にユーザ追加できないように、「Settings」を選び、
「Sign-in Restrictions」の「Sign-in enabled」のチェックを外します。
https://ydlprog.no-ip.biz:46410/gitlab へのアクセスを、
https://ydlprog.no-ip.biz/gitlab でアクセスできるように、
リバースプロキシ用の設定ファイルを用意します。
<IfModule mod_ssl.c> <VirtualHost *:443> SSLEngine on SSLProxyEngine on SSLProxyVerify none SSLProxyCheckPeerCN off SSLProxyCheckPeerName off SSLProxyCheckPeerExpire off SSLCertificateFile /etc/apache2/ssl/apache.pem SSLCertificateKeyFile /etc/apache2/ssl/apache.pem ProxyPass /gitlab https://127.0.0.1:46410/gitlab ProxyPassReverse /gitlab https://127.0.0.1:46410/gitlab </VirtualHost> </IfModule>
設定を反映させ、Apache2 を再起動。
$ sudo a2ensite gitlab.conf $ sudo a2enmod proxy_http $ sudo service apache2 restart
毎日 AM 5:00 にバックアップを作成。
バックアップデータは /var/opt/gitlab/backups/nnnnnnnnnn_gitlab_backup.tar に作成されます。
MAILTO=root 0 5 * * * root /opt/gitlab/bin/gitlab-rake gitlab:backup:create > /dev/null