====== GitLab のインストール ====== このページは GitLab CE 8.5.5 を元に書いています。 ===== インストール ===== インストールは、[[https://about.gitlab.com/downloads/|本家]]のページにアクセスし、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" ===== https 接続をする場合 ===== 新規に作る場合は、まずはオレオレ証明書の作成します。\\ 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回実行する。 ===== GitLab の設定 ===== 設定した url にアクセスし、初期設定のユーザ(root:5iveL!fe)でログインします。 {{:ubuntu:v1404:gitlab_00.png?620|}} パスワードを変更します。 {{:ubuntu:v1404:gitlab_01.png?620|}} 新しいパスワードで、ログインし、「Admin Area」を選択。 {{:ubuntu:v1404:gitlab_02.png?620|}} 勝手にユーザ追加できないように、「Settings」を選び、\\ 「Sign-in Restrictions」の「Sign-in enabled」のチェックを外します。 {{:ubuntu:v1404:gitlab_03.png?620|}} ===== Apache2 のリバースプロキシ設定 ===== https://ydlprog.no-ip.biz:46410/gitlab へのアクセスを、\\ https://ydlprog.no-ip.biz/gitlab でアクセスできるように、\\ リバースプロキシ用の設定ファイルを用意します。 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 設定を反映させ、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