GitLab

GitLab とは?

GitLab は、Git リポジトリをホストし、CI/CD パイプライン、課題管理、コンテナレジストリを同じ製品に含みます。GitLab のホスティングサービスを使うことも、自社のサーバーで運用することもできます。

エンジニアに相談する ナレッジベース
モニターに表示されたソースコードの行

どういうものか

GitLab は、Git で管理されるプロジェクトを保管します。CI/CD パイプラインは、コードが変わるたびにソフトウェアをテスト、ビルド、配信し、課題は関連するコードの隣で管理されます。コンテナレジストリは、Docker のビルドが生成するアプリケーションイメージを保管します。

セルフマネージド版は、自社が管理するサーバーで動くため、コードとビルドシステムを社内に置きたい企業に向いています。GitHub と比較されることが最も多い製品です。

企業にとって重要な理由

  • グループの所有:プロジェクトは、従業員の個人の名前空間ではなく、会社が所有するグループに置くべきです。セルフマネージドのサーバーでは、管理者の認証情報も会社が保持してください。
  • トークンとデプロイキー:これらはユーザーアカウントと同じようにアクセス権を与えます。アカウント、トークン、キーを定期的に見直し、退職者に紐づくものは失効させてください。
  • パイプラインの秘密情報:パスワードや API キーは、履歴に残るため、リポジトリのファイルに置いてはいけません。保護されたパイプライン変数かシークレットマネージャーを使ってください。
  • 自分で行うバックアップ:セルフマネージドの GitLab サーバーには、独自のバックアップと、テスト済みのリストアが必要です。ホスティングサービスを使う場合でも、最も重要なコードは、独立したコピーを保管してください。

KawaConnect における GitLab の扱い方

当社は自社で GitLab をホストし、毎日使っています。CI/CD パイプラインとコンテナイメージのビルドを動かし、コードとしてのインフラを保持し、Kubernetes への GitOps デリバリーを駆動しています。

お客様の GitLab では、最上位のグループを会社が所有していることを確認したうえで、アカウント、トークン、デプロイキーを確認し、退職者に属するものを削除します。

関連サービス

LinuxとKubernetes

パイプライン、コードとしてのインフラ、クラスターへの GitOps デリバリー。

ソフトウェア

自動化されたパイプラインでビルド、リリースする業務向けカスタムソフトウェア。

AIと自動化

コードの変更をきっかけに始まる自動化と連携。

詳しく見る

  • Wikipedia の GitLabGitLab に含まれるものと提供形態についての中立的な概要。ホスティング方式を比較するときに役立ちます。
  • GitLab 公式サイトプラットフォームを説明する公式サイト。
  • GitLab ドキュメントパイプライン、アクセス制御、セルフマネージドのインストールを扱う、管理者向けの公式ガイド。

自社で GitLab を運用することを考えていますか?

チームが何を作り、どこで動かす必要があるかをお知らせください。自社サーバーに必要な保守も含め、ホスティング版とセルフマネージド版をお客様の場合に即して比較します。

相談を始める