GitLab CEをインストールしてみた #gitlab #DevOps #GitLab
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
GitLabとは
GitLabは、ソースコード管理を中心に開発サイクルの全体(チャット、問題、コードレビュー、CI、CD、サイクルアナリティクス)を統一したUIで提供するプロダクトです。
一般的にGitLabというとGitHubCloneという印象が濃いですが、オープンソースで精力的な開発が行われていて、ただのソースコード管理システムの範疇を超えて開発サイクル全体に対する統一的な環境を提供しています。
製品についての詳細はこちらを参照してください。
GitLabのインストール方法
さっそくGitLab Community Editionをインストールしてみます。
GitLabのインストールについては、GitLab社のWebサイトで説明されている通り、幾つかの方法が存在しています。
- 各OSに対応したomnibusインストール (おすすめ)
- Dockerイメージによるインストール
- ソースからのインストール
この内、GitLab社は「1」のomnibusインストールを推奨しています。最も手軽で簡単に始められる方法となります。
今回はおすすめどおり、omnibusインストールにてインストールを行います。
インストール環境
omnibusインストールは、以下のOSに対応しています。
- Ubuntu
- Debian
- CentOS 6
- CentOS 7
- OpenSUSE
- Raspberry Pi 2
今回は、日本での利用者が多そうなCentOS 7の環境で試してみました。
CentOS以外のOSでも、omnibusインストールを用いると今回の記事と同様に手軽にインストールが可能です。
システムの必要要件は以下の通りとなります。
- 4GB以上のメモリ
- 4GB以上のディスク領域
上記にプラスしてリポジトリ等のデータを保存するために必要なディスク容量が必要になります。
インストールの実行
GitLab社のWebサイトの記述どおりに実行します。
事前準備として以下のインストールや設定を行います。
- OpenSSHのインストール
- postfixのインストール
- http(80)ポートの開放
[xxxxx@demo ~]$ sudo yum install curl policycoreutils openssh-server openssh-clients -y
[xxxxx@demo ~]$ sudo systemctl enable sshd
[xxxxx@demo ~]$ sudo systemctl start sshd
[xxxxx@demo ~]$ sudo yum install postfix
[xxxxx@demo ~]$ sudo systemctl enable postfix
[xxxxx@demo ~]$ sudo systemctl start postfix
[xxxxx@demo ~]$ sudo firewall-cmd --permanent --add-service=http
[xxxxx@demo ~]$ sudo systemctl reload firewalld
これで事前準備は完了です。
準備が出来たらインストールを実行します。
まずはインストール用のシェルスクリプトのダウンロード、レポジトリのセットアップなどの前処理を行います。
[xxxxx@demo ~]$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
・
・
・
The repository is setup! You can now install packages.
その後、同じディレクトリでインストールを実行します。
[xxxxx@demo ~]$ sudo yum install gitlab-ce -y
読み込んだプラグイン:fastestmirror, langpacks
・
・
・
*. *.
*** ***
***** *****
.****** *******
******** ********
,,,,,,,,,***********,,,,,,,,,
,,,,,,,,,,,*********,,,,,,,,,,,
.,,,,,,,,,,,*******,,,,,,,,,,,,
,,,,,,,,,*****,,,,,,,,,.
,,,,,,,****,,,,,,
.,,,**,,,,
,,.
_______ __ __ __
/ ____() // / ____ / /
/ / __/ / __/ / / __ `/ __ \
/ // / / // /___/ // / // /
____//_/_____/__,/.___/
gitlab: Thank you for installing GitLab!
gitlab: To configure and start GitLab, RUN THE FOLLOWING COMMAND:
sudo gitlab-ctl reconfigure
・
・
・
完了しました!
[xxxxx@demo ~]$
あっという間にインストールが完了しました。とても簡単ですね。
”ce”の箇所を”ee”に書き換えるとEnterprise Editionのインストールが動きます。
Reconfigureの実行
インストールが完了したら、Reconfigureを実行します。
[xxxxx@demo ~]sudo gitlab-ctl reconfigure
また、後から設定を変更した場合もこのコマンドを実行し再設定を行います。
実行するとログに、
Starting Chef Client, version 12.12.150
resolving cookbooks for run list: ["gitlab"]
Synchronizing Cookbooks:
- package (0.0.0)
- runit (0.14.2)
- gitlab (0.0.1)
- registry (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
・・・
と出てきます。GitLabは各種構成の設定をChefで実行しています。
定義ファイルを変更した後、コマンド一つで設定変更を反映し利用可能な状態に変更してくれます。
これはChefを利用している大きな利点ですね。とても簡単でパワフルです。
(Chefについても興味がありましたらこちらを参照してください。)
インストール後
利用開始のためには、インストールしたHostにブラウザでアクセスします。
初期画面で管理者パスワードの設定変更を促されるので、管理者パスワードと確認用パスワードを入力します。
するとログイン画面に誘導されますので、rootユーザと先ほど入力したパスワードでログインできます。
これでインストールは完了です。GitLabの世界をお楽しみください。
最後に
今回、omnibusインストールを試してみて、とても手軽にインストールできるということがわかりました。
また、Enterprise Editionについてもほとんど同じようにインストールが可能です。
CEとEEの機能比較についてはこちらを参照してみてください。
Enterprise EditionについてもGitLab社のWebサイトから申し込むと30日間のお試しが可能です。
これだけ手軽に始めることができますので、まずはインストールして使ってみる事をおすすめします。
GitLabに関する詳細・お問合せはこちらを参照ください。