CodefreshとGitLabの比較

このページのコンテンツ

要約

Codefresh is a CI/CD tool designed for containers and Kubernetes. Codefresh features a GitLab integration that allows you to use GitLab for version control and run Codefresh pipelines on your code. Codefresh has some features that make it more mature than GitLab for running pipelines across multiple projects. But it lacks the benefits of a single application.

Codefresh charges for builds per month, as well as concurrent builds. GitLab has no such limitations with the ability to elastically scale Runners to handle as many concurrent builds as needed on demand and then scale down so you aren't paying to keep inactive Runners up.

Codefresh only offers a self-managed option for Enterprise pricing. Free, Basic, and Pro tiers are for SaaS-only. GitLab offers self-managed and SaaS options at every price point.

リソース

コメント/逸話

Additional CodeFresh Capabilities

Private Helm repository

Global Helm repo configuration

Helm Repository browser

Helm release boards

Helm environment board

Zero configuration caching/artifacts using docker volumes

Distributed Docker layer caching

Custom docker image annotations

Inline pipeline editor

比較

機能

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

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

複数のリポジトリのイメージを単一の UI ビューで表示します。

GitLab コンテナレジストリの詳細

Helm チャートリポジトリをサポート

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Helm Chartの保存と取得をサポートします

GitLab 課題を見る

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

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

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

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

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

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

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

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

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クラスターにアプリケーションをインストールのドキュメントを確認

失敗した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定義ファイルをインクルードできます。

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

静的アプリケーションセキュリティテスト

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab では、CI/CD パイプラインで静的アプリケーションセキュリティテスト (SAST) を簡単に実行することができます。 アプリケーションに含まれるライブラリの中に脆弱なソースコードや よく知られたセキュリティバグがないかどうかをチェックします。 結果はマージリクエストとパイプラインビューに表示されます。 この機能は Auto DevOps の一部として利用可能で、デフォルトでのセキュリティを提供しています。

静的アプリケーションセキュリティテストの詳細

supports 18 languages

機密情報の検出

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab では、CI/CD パイプラインで機密情報の検出を行い、意図せずにコミットされた機密情報をチェックします。 結果はマージリクエストやパイプラインビューに表示されます。 この機能は Auto DevOps の一部として提供されています。

機密情報の検出の詳細

依存関係の脆弱性スキャン

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabはアプリケーションが使用するライブラリに存在する既知のセキュリティバグを自動的に検出し、アプリケーションを脆弱性から保護します。 依存性スキャンの結果はマージリクエストおよびパイプラインの画面に表示されます。 この機能はAuto DevOpsの一部として利用できます。

依存関係の脆弱性スキャンの詳細

コンテナの脆弱性スキャン

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

アプリケーションのDockerイメージをビルドする際に、コードをデプロイする環境に既知の脆弱性が存在しないかGitLabで確認できます。 コンテナスキャンの結果はマージリクエストとパイプラインに表示されます。 この機能はAuto DevOpsの一部として利用できます。

コンテナの脆弱性スキャンの詳細

動的アプリケーションセキュリティテスト

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

オンラインのアプリケーションに対して、GitLabのCI/CDパイプラインで動的アプリケーションセキュリティテスト(DAST)を実行できます。 これにより、アプリケーションにXSSや認証フローの不備のような脆弱性が存在しないかをテストできます。 テスト結果はマージリクエストとパイプラインに表示されます。 この機能はAuto DevOpsの一部として利用できます。

コンテナのアプリケーションセキュリティの詳細

双方向なアプリケーションセキュリティテスト

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

IAST は静的 / 動的アプリケーションセキュリティテスト方法の要素を組み合わせて、結果の全体的な品質を改善します。通常 IAST はライブラリの呼び出しなどを監視するために、エージェントを使用してアプリケーションを計測します。GitLab はまだこの機能を提供していません。

ブラウザーパフォーマンステスト

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マスターにマージする前に、Web アプリケーションのパフォーマンスの低下を簡単に検出します。ブラウザのパフォーマンステストは Auto DevOps に含まれており、設定なしでルートページの自動的なパフォーマンス分析を提供します。

ブラウザーパフォーマンステストの詳細

Load Performance Testing

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Easily detect performance regressions for software under load, prior to merging into master.

Learn more about Load Performance Testing

レビューアプリのアクセシビリティテストを自動化

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

アクセシビリティテストを実施することは、製品を利用するすべてのユーザーにサービスを提供するために重要です。 GitLab では、masterにマージする前にアクセシビリティレポートを自動的に生成することができます。

自動アクセシビリティテストの詳細

仮想パッケージリポジトリを活用して、パッケージ管理ワークフローを簡素化します。

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

仮想リポジトリとは、単一の論理 URL を通じてアクセスされるローカル、リモート、その他の仮想リポジトリの集合体です。

GitLabのエピックで、この機能を追加するために必要な課題を詳細に説明しています。

より安全で信頼性の高いビルドのためのリモートパッケージレジストリをプロキシします。

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

多くの組織では、頻繁に利用しているアップストリームのイメージ/パッケージ用のキャッシュプロキシを使うのが便利です。CI/CD の場合は、プロキシはリクエストを受信し、レジストリからアップストリームのイメージを渡す責任があり、パイプラインを高速化するためのプルスルーキャッシュとして機能します。

依存性プロキシの詳細

Conan (C/C++) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Conan は、開発者がネイティブバイナリを作成, 共有するためのオープンソースの分散型 C/C++ マルチプラットフォームパッケージです。

Conanリポジトリに関するドキュメント

Maven (Java) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab の Maven リポジトリにより、組織全体での Java ライブラリの公開と共有が簡単になり、依存関係が正しく管理されるようになります。認証と承認を含め、GitLab と完全に統合されています。

Maven リポジトリのドキュメント

NPM レジストリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab の NPM リポジトリにより、組織全体で NPM パッケージを公開および共有しやすくなり、依存関係が正しく管理されるようになります。認証と承認を含め、GitLab と完全に統合されています。

NPM リポジトリに関するドキュメント

NuGet (.NET) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabのNuGetリポジトリは、C#/.NETの開発者がNuGetクライアントやVisual Studioを使ってパッケージを作成、公開、共有することを可能にします。

NuGet リポジトリのドキュメント

PyPI (Python) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Python開発者はGitLabをリモートPyPIリポジトリとして設定し、PyPIクライアントやGitLab CI/CDを使ってパッケージをビルド、公開、共有することができます。

エピックで詳細を確認

RPM (Linux) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

この計画中の機能により、Linux開発者は、ソースコードやパイプラインと一緒にRPMパッケージを構築、公開、共有することができます。

課題で詳細を確認

Debian (Linux) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

この計画中の機能により、Linux 開発者はソースコードやパイプラインと一緒に Debian パッケージを構築、公開、共有できるようになります。

課題で詳細を確認

RubyGems (Ruby) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

この計画中の機能は、Ruby開発者がGitLabをリモートのRubyGemsリポジトリとして設定し、コマンドラインやGitLab CI/CDを使ってパッケージをビルド、公開、共有できるようにするものです。 また、GitLab自体の開発にとっても貴重な機能であり、dogfoodingにも役立ちます。

課題で詳細を確認

Go リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

この計画中の機能により、Go開発者はソースコードやパイプラインと一緒にパッケージを構築、公開、共有できるようになります。 これはGitLab自体の開発にとっても貴重な機能であり、dogfoodingにも役立ちます。

課題で詳細を確認

Composer (PHP) リポジトリ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

この計画中の機能により、PHP 開発者はソースコードやパイプラインと一緒にパッケージを構築、公開、共有することができるようになります。

課題で詳細を確認

REST APIでパッケージレジストリを使用する

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

REST API を使用して GitLab パッケージレジストリの自動化とインテグレーションをサポートします。

APIに関するドキュメント

リポジトリ毎の複数のパイプラインを定義

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab では複数プロジェクトにまたがるビューを提供する複数プロジェクトのパイプラインがありますが、各パイプライン定義は特定のプロジェクトに関連付けられた YAML ファイルとして存在します。GitLab には今のところ 1 つの YAML ファイルに複数のパイプラインを定義する機能はありません。

この課題の詳細を確認

monorepo の明示的なサポート

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

特定のパスやファイルに変更がある場合にのみジョブを実行する機能は、単一のレポに多くのマイクロサービスを含むモノレポをサポートします。

CI/CD のみ/以外の実行の詳細

Docker レジストリのグローバルブラウザ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

複数のリポジトリのイメージを単一の UI ビューで表示します。

この課題の詳細を確認

グループレベルのKubernetesクラスター設定

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループのためのKubernetesクラスター設定を単一のUIで表示します。

この課題の詳細を確認

インスタンスレベルのKubernetesクラスター設定

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab インスタンスの Kubernetes クラスター設定を単一の UI で表示します。

この課題の詳細を確認

ファーストクラスのコンテナ作成

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

実装の詳細を定義する必要なく、CI/CD のジョブ中にコンテナを構築するように定義できる機能です。

この課題の詳細を確認

グループレベルの Kubernetes クラスター

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループやサブグループ内の全てのプロジェクトに使用できるグループレベルの Kubernetes クラスターを作成します。

グループレベルのクラスタの詳細

インスタンスレベルの Kubernetes クラスタ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

同一の GitLab インスタンス内の全てのグループやプロジェクトで使用できるインスタンスレベルの Kubernetes クラスタを作成します。

インスタンスレベルクラスタの詳細

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

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

GitLabはオープンコア

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

ソースコードにアクセス

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

コミュニティからの貢献

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

長期利用に最適

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

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

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

Gitlab x icon svg