GitLabのエディションやインストール手順についてまとめてみた

更新日 : 2023/6/4

最近お仕事でGitLabを使う機会があり、Gitlabについて少し調査したので一旦まとめようと思います。

今回、私はブラウザ上でGitLabを使うユーザーというより、サーバを管理する立場だったこともあり、GitLabのエディションやサーバ管理についての内容がメインです。

まずはGitLabセルフマネージド版とSaaS版についてです。

提供のされ方(セルフマネージド版 / SaaS版)

GitLabには自分でサーバを用意する「セルフマネージド版」と、サーバを用意しなくてもいい「SaaS版」があります。

それぞれの特徴は以下です。

セルフマネージド版

  • サーバを利用者側で用意して(オンプレ、AWSなど)、その上にGitLabをインストールして利用する
  • 料金体系は以下の3つがある
  • free($0/月)
  • premium($29/月)
  • Ultimate($99/月)
  • ディストリビューションは以下の2種類がある
  • GitLab CE(Community Edition)
  • オープンソース
  • 無料で利用可能(有償版はなし)
  • ライセンス購入していないEEと同等の機能
  • GitLab EE(Enterprise Edition)
  • エンタープライズ向けの商用製品
  • ライセンス購入せず無償でも利用可能だが、有償だと機能が増える(増える機能や料金は下記の「料金体系」を参照)
  • 公式の推奨インストール手順でもEEのインストール手順が記載されていたり、CEとEEの違いについての説明ページからもEEの仕様が推奨されているため公式の推奨版といえる

SaaS版

  • GitLabの公式サイトにてサインアップ(アカウント登録)するのみで利用でき、サーバを準備する必要がない
  • 実体はGoogleCloudで稼働している


SaaS版については使う予定が元からなかったこともあり、あっさりです笑。

料金体系

セルフマネージメント版、SaaS版共に以下の料金体系となっています。

何円払うことでどの機能が利用できるようになるかの詳細は公式サイトに記載されていますが、超独断で超簡単に要約してみます。
正確に違いを把握したい方は公式をご確認ください。

Free($0/月)

以下の基本的なサービスが利用可能です。
  • ソースコード管理
  • WikiやIssueの管理
  • CI/CD機能

Premium($29/月)

以下のサービスが利用可能です。
  • GitLab外のリポジトリからGitLabリポジトリへの自動ミラーリング
  • GitLab外の他のリポジトリと接続したCI/CD実行
  • 24時間365日のサポート

Ultimate($99/月)

セキュリティや脆弱性情報についての高度な機能が利用可能なようです。

今回の利用目的ではFreeで問題ない程度だったので、PremiumやUltimateの機能についてはそんなに詳しく確認していません。
繰り返しとなりますが、詳細を知りたい方は上記公式サイトをご確認ください。

ハードウェア要件

GitLabは色々な機能がてんこ盛りなこともあって、貧弱なサーバで稼働させようとするとレスポンスがとても遅くなってしまいます。
公式からは最低限のハードウェア要件として、以下のように提言されています。
ちなみに言わずもがなですが、SaaS版はサーバを自分で用意する必要はないので、セルフマネージド版のみ対象です。
  • ストレージ
  • オムニバス(セルフマネージメント版)GitLabパッケージのインストールには、 約2.5GBのストレージスペースが必要
  • CPU
  • 推奨の最低数は 4コア (4コアだと最大500ユーザー管理可能で、8コアだと約1000ユーザー)
  • メモリ
  • 推奨の最低サイズは 4GB RAM (4GBRAMだと最大500ユーザー管理可能で、8GB RAMだと約1000ユーザー)
以上、最近であればそこまでクリアは難しくないスペックかなという感じです。

インストール前の説明はここまでで、次はインストールの方法を説明してきます。

インストール手順(Ubuntu向け)

今回はUbuntu上にGitLabをダウンロード&インストールしてみたので、ほぼ公式の手順そのままですが、行った手順を書いていきます。
所要時間は大体20分程度でした。
  • GitLabをインストールするサーバへSSH等で接続する
  • 以下のコマンドを実行する
  • // aptをアップデート
    $ sudo apt-get update
    // 依存パッケージをインストール
    $ sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
    // 依存パッケージをインストール ※GitLabからのメールの送信機能を利用しないのであれば不要
    $ sudo apt-get install -y postfix
    // GitLabパッケージリポジトリをダウンロード
    $ curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
    // GitLabをインストール。「EXTERNAL_URL」はGitLabへのアクセスする際のURLを入力する部分で、後で変更可
    $ sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ee
こんな簡単にインストールできるのか!って感じですがこれでインストール完了です。
ちなみに最後のインストールコマンドの実行で10~15分程かかりました。

管理用コマンド

インストールを終えて運用に入ると、GitLabのサービスを起動したり停止したりすることがあるかと思います。

GitLabの起動や停止などなは、`gitlab-ctl`から始まるコマンドを利用することで可能です。
GitLabを構成しているnginxなどの起動や停止もこのコマンドでできます。

▼サーバの起動

$ gitlab-ctl start

▼サーバの停止

$ gitlab-ctl stop

▼サーバの再起動

$ gitlab-ctl restart

▼サーバのステータス確認

$ gitlab-ctl status

▼設定の再構成

$ gitlab-ctl reconfigure

▼nginxの停止

$ gitlab-ctl stop nginx

▼GitLabサーバのログの確認

$ gitlab-ctl tail


コマンドは他にも沢山ありますが、基本的なコマンドは以上です。

最後に

以上、GitLabについて簡単でしたがまとめてみました。

冒頭でも書きましたが、今回GitLabを管理する側の立場だったこともあり、インストールや管理コマンド中心の内容となりましたが、少しでもどなたかの参考になればと思います!

それでは!