今まで Apache と ssh で簡易的に個人的な git repository を管理していたのですが,もう少し使い易くするために前々から計画していた GitLab server を設置しました.その設定の備忘録です.
まず,GitLab 開発元の情報を参照.
今回使うのは,GitLab CE (Community Edition) .今回は CentOS7 でのインストールとなりますが,OS のインストールと postfix のインストール記録は,こちらとこちら.
この後は基本的に開発元ページの指示通りに設定を行います.
# curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash # yum install gitlab-ce # gitlab-ctl reconfigure
基本的にはこれだけでインストールされ,さらに GitLab が使える状態になります.ここではサーバーの url を,gitlab.*****.local としていますが,サーバー名とアクセスさせる url が違う場合は,
# vi /etc/gitlab/gitlab.rb external_url 'http://gitlab.example.com' # gitlab-ctl reconfigure
とする.しばらく待ちますが,
Running handlers: Running handlers complete Chef Client finished, 220/309 resources updated in 01 minutes 50 seconds gitlab Reconfigured!
のように出れば終了の様です.で,ブラウザで http://gitlab.*****.local にアクセスすると
のような画面が表示され,管理アカウントである root の初期パスワードを設定するよう促されます.設定後,ログインページが表示されます.
[Existing user? Sign in] の
- Username or Email: root
- Password: 最初に設定したパスワード
を入力して [Sign in] すれば,管理ユーザーのページに遷移します.この辺の状況は GitLab ver 8.2 (インストールしたのは 8.8.3)と変わっているようですね.以前は管理ユーザー root の初期パスワードが「5iveL!fe」で,このパスワードでログインしてから管理ユーザーのパスワードを変更するという手順だったようです.
管理ユーザーの初期ログイン画面は以下の通り.
右上赤い四角で囲んでいる部分に「管理画面」(Admin area)へ遷移するスパナ型のボタンがあり,これで遷移した先の左側ペインの最後のメニューとして「設定」(Settings) があります.
この「設定」画面から GitLab の設定のかなり細かい部分まで変更できるようです.私の場合は,GitLab のログインページにある [Sign up] を残したままだと,だれでもアカウントを作れてしまうため,
- Sign-up enabled
のチェックを外した以外はデフォルトのままとしました.この辺の状況も少し前のバージョンから変更されているようで,例えば,
- Send confirmation email on sign-up
のチェックは昔は ON,今は OFF がデフォルトになっています.
私の場合は, [Sign up] させないことにしましたので,設定ページの「Users」から適当なユーザーを追加して,とりあえず終了です.
なお,/etc/gitlab/gitlab.rb を変更したときのおまじないと,gitlab のスタート・ストップは以下の通り.
# gitlab-ctl reconfigure # gitlab-ctl stop # gitlab-ctl start # gitlab-ctl restart
以上.続いて既存リポジトリの移行方法はこちら.で,このサーバーは GitLab 専用として,Hyper-V 上で動かし,メモリ量は可変としているのですが,ここまでのメモリとディスクの使用量は
- Memory: 2304MB
- disk: 4570MB
です.やはり色々裏で動いていますので,結構メモリを消費するようですね.なお,今回入れた GitLab 関係プログラムの version は以下の通り.
- GitLab 8.8.3
- GitLab Shell 2.7.2
- GitLab APIv3
- Git 2.7.4
- Ruby 2.1.8p440
- Rails 4.2.6
- PostgreSQL 9.2.16