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