JenkinsとGitLabの比較

このページのコンテンツ

概要

Plugins
Plugins
DevOptics
Plugins
DevOptics
On Roadmap
On Roadmap
On Roadmap
DevOptics
On Roadmap
Plugins
On Roadmap
Plugins
On Roadmap
Plugins
On Roadmap
Plugins
On Roadmap
Integration with ServiceNow
Plugins
On Roadmap
Plugins
On Roadmap
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
On Roadmap
Plugins
On Roadmap
Plugins
Plugins
Plugins
Plugins
Via Integration
Plugins
Plugins
Via Integration
On Roadmap
Plugins
Plugins
Via Integration
On Roadmap
Plugins
Plugins
Via Integration
On Roadmap
Plugins
Plugins
Via Integration
Plugins
Via Integration
Plugins
Via Integration
Plugins
On Roadmap
Jenkins X
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
Plugins
On Roadmap
On Roadmap
Via Integration
Plugins
Via Integration
Plugins
Plugins
Jenkins X
Plugins
Via Jenkins X
Plugins
CodeShip
Plugins
Jenkins X
Jenkins X
Jenkins X
Plugins
Via Plugins
Plugins
Plugins
Jenkins X + Plugins
Plugins
On Roadmap
Plugins
On Roadmap
Plugins
On Roadmap
Plugins
Plugins
Plugins
Plugins
Jenkins X
Plugins
Plugins
Plugins
Via Integration
On Roadmap
Plugins
Via Integration
On Roadmap
Plugins
On Roadmap
On Roadmap
On Roadmap
On Roadmap
On Roadmap
On Roadmap
On Roadmap

要約

Jenkinsは世界中でもっとも人気のあるビルドの自動化、およびCI/CDツールの一つです。何百もの利用可能なプラグインの機能を組み込むことで、信じられないほどの柔軟性が生まれ、あらゆるプロジェクトの構築、デプロイ、自動化をサポートすることができます。

2018年第3四半期のJenkins Worldカンファレンスでは、CloudBees(Jenkinsの主要メンテナー)がJenkinsを分割してクラウドネイティブ版と、簡易化された機能制限版(Jenkins Evergreen)に注力することで、Jenkinsの競争力を復活させる意向を発表しています。また、Jenkins XというJenkinsのサブプロジェクトもあり、Kubernetesを使ったパイプラインの実行を容易にすることを目的としています。

Jenkins Xは、Jenkins CI/CDサーバ、Kubernetes、Helmなどのツールをネイティブに統合し、GitOpsを使って環境を管理するなど、ベストプラクティスを組み込んだ模範的なCI/CDパイプラインを提供します。KubernetesコンテナへJenkinsをデプロイすることで、Jenkinsのインストールと統合の複雑さを回避します。しかし、Jenkinsサーバをはじめ、多くのツールが複雑に組み合わされているため、メンテナンスは容易ではありません。

対照的に、GitLabはすでに、DevOpsのライフサイクル全体に完全に統合されたオールインワンのアプリケーションを提供することで、Jenkinsが期待している以上のものを提供しています。Jenkinsが注力しているCI/CDに加えて、GitLabは計画、ソースコード管理、パッケージング、リリース、構成、モニタリングの機能も提供しています。

不足部分

  • Jenkinsのネイティブ機能の拡張はプラグインを使って行います。プラグインの維持・セキュリティ・アップグレードにはコストがかかります。対照的に、GitLabはオープンコアであり、誰もが直接コードベースに変更を投稿することができ、一度マージされれば変更のたびに自動的にテストされ、メンテナンスされます。

コメント/逸話

  • HackerNewsのスレッド - Jenkins is Getting Old
  • Jenkinstein - 記事よりDevOps World 2018: ‘Jenkinstein’ and a Cloud Native Jenkins
    • Snowflake サーバと "Brent" の状況と、それがどのようにすべてを遅くするかを説明します。これは、Jenkinsユーザーが今日直面している主要な問題の1つであり、Jenkinsには簡単な解決策がありません。

      このチャネルのゲートキーパーとして機能しているのは、CloudBeesのCEOであるSacha Labourey氏が「Jenkinsガイ…彼のチームでJenkinsを素晴らしいものにすることに専念しているスーパースター」と表現した人物である。この人物は彼の組織内でのデプロイの権威であるため、複数のチームがスケジューリングの目標を達成するために彼を頼りにしています。しかし、これが技術的な問題につながり、IT運用以外ではほとんどの人が時間をかけて検討することができません。. . 複数のエージェントで分散スキームを管理するサーバーは、古い電話帳やWindows XPのシステムレジストリのように肥大化してしまいます。

      そして、その組織のJenkinsのデプロイはJenkinsガイに依存しているだけでなく、プラグインの選択に多少縛られているため、その結果、CEOが "フランケンシュタインJenkins "と呼んだものや、火曜日のカンファレンスで他の開発者やエンジニアが "Jenkinstein "と呼んでいたものになってしまいます。

    • 再び、CloudBees CEOのSacha Labourey氏が、現在のJenkinsに共通する問題点を説明しています:

      Jenkinsは肥大化し、起動に時間がかかります。クラッシュすると、起動に時間がかかります。何百人もの開発者が怒っています。そして誰もそれを修正しようとしません。

  • CloudBees CTOでありJenkinsの作者の川口耕介氏の2018年8月31日のメモより(https://jenkins.io/blog/2018/08/31/shifting-gears/):
    • "Our Challenges. . . Service instability. . . Brittle configuration. . . Assembly required. . . Reduced development velocity. . ." (それぞれの詳細については上記リンクを参照)
    • "Path forward. . . Cloud Native Jenkins. . . continue the incremental evolution of Jenkins 2, but in an accelerated speed"
    • 重要なポイント:
      • 彼らは今後のリリースで後方互換性を壊す予定です
      • クラウドネイティブなJenkinsのために新しい仕組みの導入を計画しています
      • 今日からJenkinsを使う人は、大きな変更に注意したほうが良さそうです
  • Jenkins Evergreenプロジェクトのページから(上の耕介氏の手紙の中で、来るべき変更のための鍵として認識されています) - https://github.com/jenkinsci/jep/blob/master/jep/300/README.adoc
    • "Pillars . . . Automatically Updated Distribution . . . Automatic Sane Defaults. . . Connected. . . Obvious Path to User Success"
    • "The "bucket of legos" approach is . . . not productive or useful for end-users [5] who are weighing their options between running Jenkins, or using a CI-as-a-Service offering such as Travis CI or Circle CI."
    • "existing processes around "Suggested Plugins", or any others for that matter, result in many "fiefdoms" of development rather than a shared understanding of problems and solutions which should be addressed to make new, and existing, users successful with Jenkins."
  • Jenkins Evergreenプロジェクトページの「問題」定義ページより (https://github.com/jenkinsci/jep/blob/master/jep/300/README.adoc#problem):

    初心者から中級者のユーザにとって,Jenkins環境を「ゼロから」一般的な CI/CDワークロードの生産性の高いものに準備するのに必要な時間は,Jenkinsとそれに関連する技術の理解度にもよるが,数時間から数日に及ぶことがある。また、環境の準備は非常にエラーが発生しやすく、最新の状態、安全性、生産性を維持し続けるためには、継続的なメンテナンスのオーバーヘッドが必要になることもある。

    さらに、多くのJenkinsユーザーは、プロジェクトに適したCI/CD環境を構築するために、どのプラグインをどのように組み合わせ、どのような方法で、どのように設定すべきかを決定することになると、選択のパラドックス[6]に悩まされます。これはJEP-2 [7]がJenkins 2.0で導入された "セットアップウィザード "で解決しようとした問題に関連しているが、Jenkins Evergreenは、ユーザーがJenkinsのメンテナンスよりも、プロジェクトの構築、テスト、提供に集中できるように、(既存のプラグインのセットによって提供される)共通機能の低オーバーヘッドでメンテナンスが容易な、強固なディストリビューションをユーザーに提供するというより広い問題に対処することを目的としている。

  • 新しいJenkinsの改善の取り組みについてのフィードバックに関するGitLabブログ - https://about.gitlab.com/blog/2018/09/03/how-gitlab-ci-compares-with-the-three-variants-of-jenkins/
  • CloudBeesのドキュメントで変更の必要性を証明するものとして指摘されたJenkinsのプロジェクト分析 - https://ghc.haskell.org/trac/ghc/wiki/ContinuousIntegration#Jenkins

    長所

    • 我々は、我々が設定する任意のアーキテクチャとOS上でビルドノードを実行することができます。

    短所

    • PRビルドでは、ビルドを適切にサンドボックス化するためにさらに労力をかけない限り、セキュリティは低いです。また、サンドボックス化してもJenkinsのセキュリティレコードは厄介です。
    • Jenkinsは設定に時間がかかることで知られています。
    • サーバーの設定にはより多くの時間がかかります。
    • サーバーのメンテナンスにはより多くの時間がかかります。
    • 再現性のある設定がどれだけ簡単にできるかは不明です。
    • The set up is not forkable (a forker would need to set up their own servers).
  • GitLabのPMMより
    • "JenkinsはKubernetesと連携するために、まったく別のプロジェクトを構築しなければなりませんでした。GitLabは最初からKubernetesをネイティブに採用しています。"
    • Jenkins Xの採用はごくわずかです。Kubernetesに移行しようとしている人のほとんどはJenkinsを使っているでしょうから、Pinterestの例が当てはまります。
    • Jenkins XはKubernetesで動作しますが、GitLabのような単一のアプリケーションではありません。やはりPPMやSCM、セキュリティツールなどと統合しなければなりません。You have to manage permissions and access across all that which GitLab gives you out of the box, but Jenkins X does not (value of a single app).

戦略

Jenkins objection handling (GitLab access only) Jenkins objection handling Q&A (GitLab access only)

リソース

料金

  • Jenkins OSS
    • 無料 (かつオープンソース)
    • しかし、メンテナンスの必要性を考えると、総所有コストはゼロではありません。
  • CloudBees Jenkins (不明瞭) - https://www.cloudbees.com/products/pricing
    • CloudBees Core - 毎月の増分アップグレード、クラウドネイティブアーキテクチャ、集中管理、24時間365日のサポートとトレーニング、エンタープライズグレードのセキュリティとマルチテナンシー、プラグインの互換性テストなどのアップグレード支援付きのJenkinsディストリビューション
      • 10ユーザーで年間20,000ドルから、大規模な組織ではユーザーごとのコストを低く抑えるための段階的な価格設定が可能
  • Jenkins X
    • 無料 (かつオープンソース)
    • しかし、総所有コストはかかります(Pinterestの逸話参照)

気になる質問

  • "Jenkinsで必要な機能を利用するためにJenkinsのプラグインを使っていますか?プラグインの数は?"
    • 平均すると7〜9という回答が期待されます。
    • 続く: "私たちが話を聞いている組織のほとんどは、Jenkinsプラグインの管理は悪夢だと言っています。それぞれのプラグインには独自の開発ライフサイクルがあり、新しいプラグインが必要になるたびにツールチェーン全体を再テストしなければなりません。グループAがプラグインAを必要としていて、Jenkins管理者がそれをインストールしたところ、プラグインBが必要とするライブラリの新しいバージョン(互換性のない)に依存していることが判明し、グループBが必要としていることがわかった、というような話を聞いたことがあります。解決策は? 各グループにそれぞれ独自のJenkinsサーバを与えてはどうでしょう?しかし、その場合は、Jenkinsのスプロール(管理するサーバの数が増える)が発生してしまいます。ツールチェーン内のすべての外部統合ツールに必要なメンテナンスやテストは言うまでもありません。" (きっとたくさんの人が心当たりのあることだと思います)

比較

機能

統合されたCI/CD

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabにはCI/CD機能が統合されているので、CI/CDのために他のツールをインストールする必要はありません。GitLabのCI/CDを使用して、ウェブサイト(GitLab Pages)やウェブアプリケーションをビルド・テスト・デプロイできます。ジョブの結果はマージリクエストに表示され、簡単にアクセスできます。

CI/CDの詳細

アプリケーションのパフォーマンス監視

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Prometheusを利用して、GitLabはデプロイしたアプリケーションのパフォーマンスメトリクスを収集し表示できます。開発者はマージが本番環境に与える影響を、GitLabから離れることなく、簡単に確認できます。

デプロイしたアプリケーションの監視の詳細

アプリケーションのパフォーマンスに関するアラート

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab を使うと、エンジニアはソースコードを書くのと同じワークフローで、サービスレベルインジケータアラートをシームレスに作成し、必要なイベントを通知できます。

SLI アラートの作成についてさらに学んでください。

GitLab サーバのセルフ監視

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

オンプレミスで運用しているGitLabサーバーをPrometheusで監視できます。これにより、自身のGitLabサーバーの稼働状況を簡単に確認できます。

GitLab サーバのセルフ監視の詳細

バリューストリーム分析

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabは計画からモニタリングまでに要した時間を計測するためのダッシュボードを提供します。GitLabには、アイディアを本番環境にデプロイするまでに必要なツールのすべてが組み込まれているので、このようなデータの提供が可能です。

バリューストリーム分析の詳細

統合されたコンテナレジストリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab Container Registryは、Dockerイメージのためのセキュアでプライベートなレジストリです。 GitLab CIからイメージを簡単にアップロードしたりダウンロードしたりすることができます。 Gitリポジトリ管理と完全にインテグレーションされています。 (Codefresh社は2020年5月1日をもってプライベートなDockerレジストリのサポートを終了する予定です。)

コンテナレジストリのドキュメント

レビューアプリで変更をプレビュー

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CI/CDを利用して、ブランチごとに新しい環境を作成することができ、開発プロセスを高速化できます。自分のブランチをプレビューできるマージリクエスト用の動的な環境を起動できます。レビューアプリは静的・動的なURLの両方をサポートします。

レビューアプリの詳細

包括的なAPI

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabは、インテグレーションの開発を可能にするために、多くの機能をAPIとして提供しています。

APIのドキュメントを表示

CI/CD 水平自動スケール

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CI/CDのクラウドネイティブなアーキテクチャでは、ワークロードが増加した場合に、新しいノードを追加することで簡単に水平方向にスケールできます。GitLab Runnerはパイプライン処理が開始されると、自動的に新しいコンテナを作成し、処理が完了して不要になったコンテナを削除します。これにより、CI/CDのコストを抑えることができます。.

GitLab CI/CDの水平オートスケーリングの詳細

CI/CD パイプラインダッシュボード

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

プロジェクトやグループ全体のパイプラインの履歴と現在のステータスをユーザーごとにカスタマイズできる単一のダッシュボードで視覚化します。

オペレーションダッシュボードでのプロジェクト間のパイプラインの詳細

コンテナや Docker を用いたビルド

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabは、GitLab独自のコンテナレジストリとDocker CI Runnerを搭載しているため、それだけでCI/CDでのコンテナワークフローを完結できます。つまり追加のプラグインをインストール、設定、管理する必要はありません。

クラウドネイティブ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabとGitLab CI/CDはクラウドネイティブな設計で開発されています。GitLab は Kubernetes 上に簡単にデプロイできます。また、Gitlab を使用してアプリケーションをそのまま Kubernetes に対しデプロイできます。

Kubernetes 連携

統合されたウェブターミナルでコンテナをデバッグ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabにビルトインされたウェブターミナルを使用すると、あらゆる環境のコンテナを簡単にデバッグできます。アプリケーションをKubernetesにデプロイしている場合は、GitLabの環境メニューから直接ターミナルのセッションを開始することができます。この強力な機能により、ブラウザから離れることなく、問題の調査を素早く行うことができます。

ウェブターミナルの詳細

柔軟なパイプライングラフ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

複数のジョブを直列、または並列に実行するパイプラインの構造は非常に複雑です。 GitLabでは単一のパイプライングラフですべてのジョブのステータスを表示できるので、 何が起こっているのかを簡単に確認できます。

パイプライングラフの詳細

成果物をブラウズ可能

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CIを使用すると、外部サービスを必要としないで、GitLab内にジョブの成果物をアップロードできます。 これによって、アップロードした成果物をGitLabのウェブインターフェースで表示できます。

プロジェクト内のジョブアーティファクトの利用の詳細

パイプラインをスケジュール実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

cronのように、パイプラインをスケジュール実行できます。

GitLabでパイプラインがスケジュール実行される仕組の詳細

コード品質

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マージリクエストのウィジェットエリアに表示されるコード品質レポートにより、 変更がコードの品質に与える影響を事前に知ることができます。

コード品質レポートの詳細

複数プロジェクトのパイプライングラフ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マイクロサービスアーキテクチャでは、パイプラインの設計はより複雑なものになります。 複数プロジェクトのパイプライングラフを使用すると、アップストリームとダウンストリームのパイプラインが、プロジェクトのトリガーを通して、どのように協調しているのかを表示することができます。

複数プロジェクトのパイプライングラフの詳細

保護変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

権限のあるユーザーだけが変数の値を取得できるように、変数を保護することができます。 「保護変数」は「保護ブランチ」で実行されているジョブからだけ取得できます。

保護変数の利用方法の詳細

環境とデプロイメント

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CIを使用すると、ビルドやテストだけではなく、インフラへのデプロイもできます。 また、CIのジョブのタグに似ている、環境を利用するとデプロイ履歴をトラッキングできます。

環境の詳細

環境履歴

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

環境履歴を使用するとサーバーに現在、何がデプロイされているのかを確認できます。また、環境の詳細画面では過去のすべてのデプロイ情報を表示できます。 この画面から現在のバージョンを再デプロイしたり、何か問題が発生した場合は、過去の安定バージョンにロールバックすることができます。

環境履歴の詳細

特定環境用の変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

どの環境から変数の値を取得できるのか制限することができます。

特定環境用変数の設定方法の詳細

グループレベル変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループレベルで変数を定義し、グループ内のすべてのプロジェクトから使用することができます。

変数の設定方法の詳細

CI/CDの設定ファイルのパスを変更可能

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

プロジェクトのトップディレクトリにCI/CDの設定ファイルを置きたくない場合などに、設定ファイルのパスを独自に定義できます。

カスタムCI/CD設定ファイルの設定方法の詳細

CI/CDジョブをWindowsで実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab RunnerはWindowsをサポートしているので、ジョブをこのプラットフォームでネイティブに実行できます。 PowerShellやバッチファイルを活用することで、Windowsに基づくプロジェクトを自動で構築、テスト、デプロイすることが可能です。

WindowsにGitLab Runnerをインストール

macOSでCI/CDのジョブを実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab RunnerはmacOSをサポートしているので、このプラットフォーム上でネイティブにジョブを実行できます。 シェルスクリプトやコマンドラインツールを利用して、macOSベースのプロジェクトのビルド、テスト、デプロイを自動化できます。

macOSにGitLab Runnerをインストール

Linux ARMでCI/CDのジョブを実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab RunnerはARMアーキテクチャのLinuxをサポートしているので、このプラットフォーム上でネイティブにジョブを実行できます。 シェルスクリプトやコマンドラインツールを利用して、Linux ARMベースのプロジェクトのビルド、テスト、デプロイを自動化できます。

LinuxにGitLab Runnerをインストール

FreeBSDでCI/CDのジョブを実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab RunnerはFreeBSDをサポートしているので、このプラットフォーム上でネイティブにジョブを実行できます。 シェルスクリプトやコマンドラインツールを利用して、FreeBSDベースのプロジェクトのビルド、テスト、デプロイを自動化できます。

FreeBSDにGitLab Runnerをインストール

パイプラインのコードカバレッジを表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabでは、カスタマイズ可能な正規表現を使用してジョブの出力をパースして、SimpleCovのようなツールが生成するコードカバレッジを取得できます。 取得したデータはUIに自動的に表示され、HTMLページなどに埋め込むためのバッジとして使用することもできます。

GitLabでコードカバレッジの生成と表示の詳細

GitLab CI/CDでの各コマンドの実行時間の詳細

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

他のCIシステムの中には、ジョブ全体の実行時間に加えて、各コマンドの実行時間を表示できるものがあります。 GitLabにも同様の機能を実装するための検討が行われています。

この課題の詳細を確認

Auto DevOps

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Auto DevOps機能を使用すると、ソフトウェア開発ライフサイクルの自動設定が適用されます。 これにより、DevOpsのベストプラクティスに従って、プロジェクトを推進することができます。

Auto DevOpsの詳細なドキュメントを確認

保護Runner

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

保護Runnerを使用すると、デプロイ用の秘密鍵のような、機密情報を保護することができます。 保護ブランチで実行されるジョブのみが、保護Runnerにアクセスできます。

この課題の詳細を確認

構築済みのKubernetesクラスタと容易に連携

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

構築済みのKubernetesクラスターをプロジェクトに追加できます。CI/CDパイプラインから、 追加したKubernetesクラスターへ簡単にアクセスでき、Review Appsをホストしたり、アプリケーションをデプロイしたりすることができます。

この課題の詳細を確認

GKE上にKubernetesクラスターを簡単に構築

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Googleアカウントに接続して、いくつかの情報を入力するだけで、 プロジェクトから直接GKE上にKubernetesクラスターを構築できます。構築したクラスターは、Auto DevOpsでアプリケーションをデプロイのに使用することができます。

この課題の詳細を確認

複数のKubernetesクラスターをサポート

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

ステージングや本番環境のような異なる環境を異なるKubernetesクラスターに簡単にデプロイできます。 これにより、ステージングと本番環境のデータを完全に分離することができます。

この課題の詳細を確認

Kubernetesクラスター用アプリケーションを簡単にデプロイ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Helm Tiller、Nginx Ingress、Cert-Manager、Prometheus、GitLab Runner、JupyterHub、KnativeをGitLabのWeb UIから1クリックでクラスターにインストールできます。

GKEクラスターにアプリケーションをインストールのドキュメントを確認

カナリアデプロイメント

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab Enterprise Edition Premiumでは、Kubernetesにアプリケーションをデプロイしている場合は、 カナリアデプロイメントを監視できます。

カナリアデプロイメントの設定の詳細

最小限のCI/CDの設定

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CI/CDは、Jenkinsのようなツールで同様のパイプラインを実行する場合と比べて、より少ない設定で済みます。

GitLab CI/CDの詳細

失敗したCIのジョブを自動で再実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

.gitla-ci.ymlに特別なキーワードを記述することで、GitLab CIでジョブが失敗した場合に、 指定の回数だけジョブを自動で再実行できます。

失敗したCIのジョブを自動で再実行の詳細

パイプラインのセキュリティ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

保護ブランチで実行されるCI/CDパイプラインに対して、定義したセキュリティルールが守られているかチェックできます。 パイプラインのセキュリティは、手動で作成したパイプライン、再実行したジョブ、手動アクションにも適用されます。

パイプラインのセキュリティの詳細

外部のCI定義ファイルをインクルード

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

複数のプロジェクトで共通なジョブのテンプレートとして再利用するために、 外部のCI定義ファイルをインクルードできます。

外部ファイルのインクルードの詳細

CI/CDのログを折りたたんで表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

ジョブの各コマンドの出力ログを折りたたんで表示できます。

ドキュメント

Kubernetes podログの表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

生成されたログファイルにより、サーバ、アプリケーション、ネットワーク、セキュリティデバイスを監視し、エラーや問題を特定して分析します。GitLab では、接続された Kubernetes クラスタ内で実行中の Pod のログを簡単に見ることができる。GitLab でログを直接表示することで、開発者はコンソールツールを管理したり、別のインタフェイスにジャンプする必要がなくなります。

Kubernetes podログの表示の詳細

Windows Container Executor

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

この機能を使用すると、Linux ホスト上と同じように Windows 上で Docker コンテナを直接使用できます。これにより、Microsoft プラットフォームのユーザーは、より高度なパイプラインの調整と管理が可能になります。

Windows Container Executor の詳細

ビジュアルレビュー

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

ビジュアル レビューでは、ユーザーはレビュー アプリから直接マージ リクエストに変更の提案についてフィードバックをできます。 この機能により、デザイナー、プロダクト マネージャー、およびその他のステークホルダーは、MR で作業している開発者と同じように簡単かつ迅速に、ルック アンド フィール /ユーザー エクスペリエンスの変更についてコメントすることができます。

ビジュアルレビューの詳細

* このページの情報は最新ではありません。最新の情報は 本家サイト をご確認ください。

GitLabはGitLab, Inc.の商標です。その他のすべての商標・ロゴマークの権利はそれぞれの所有者に帰属します。

GitLabはオープンコア

GitLabの競合製品のほとんどはソースコードを公開していませんが、GitLabはオープンコア製品です。 GitLabコミュニティエディションは完全なオープンソースで、 GitLabエンタープライズエディションはオープンコア(プロプライエタリ)です。

ソースコードにアクセス

クローズドソースなソフトウェアと異なり、 コミュニティエディションエンタープライズエディションの ソースコードを確認したり、修正することができます。 機能の追加やカスタマイズのために、サーバーのソースコードを修正したり、GitLabのリポジトリをフォークすることができます。 独自に実施した変更はメインのソースコードにフィードバックし、マージされるように挑戦することを推奨します。 それにより、他のユーザーの役に立つ上に、自身のインスタンスのアップデート作業を簡単に保つことができます。

コミュニティからの貢献

GitLabには毎月数百人からの貢献があります。 顧客・ユーザー・GitLab社員のすべてが毎月のリリースに貢献しています。 このことは、簡単に使用できる便利なユーザー管理のような、 組織にとって本当に必要な機能の開発に役立っています。

長期利用に最適

GitLabは、数十万の組織が利用し、頻繁にソフトウェアへ貢献しています。 GitLabには堅牢なコミュニティが存在します。 つまり、GitLabは単一企業のサポートに依存していないので、 長期利用に適しています。

毎月、新しい安定版がリリース

毎月、機能の改善と新機能の追加と不具合の修正のすべてが適用された、 GitLabの新しい安定版がリリースされます。 これにより、GitLabはとても迅速に顧客の要望に応えることができます。

オンライン「GitLabトレーニング(初級)」申し込み受付中

開催日: 2020年9月8日(火)・9日(水) / 10月6日(火)・7日(水)

Gitlab x icon svg