Skip to content
Latchkey

Drone vs Woodpecker CI: セルフホスト型のコンテナ CI

完全にオープンソース(Apache-2.0)でコミュニティが運営するコンテナネイティブな CI が欲しいなら Woodpecker を、商用サポートとエンタープライズ機能を備えた確立されたプロジェクトが欲しく、そのライセンス条項を受け入れられるなら Drone を選びましょう。

Woodpecker CI は、Drone のライセンス変更後に Drone のコミュニティフォークとして始まり、両者は多くの DNA を共有しています。どちらも軽量でコンテナネイティブなセルフホスト型の CI システムで、各パイプラインステップがコンテナ内で実行されます。今日の実際的な違いはガバナンスとライセンス、そしてプロジェクトが別々に進化するにつれて生じる一部の機能や統合の相違です。

DroneWoodpecker
起源オリジナルプロジェクト(Harness 支援)Drone のコミュニティフォーク
ライセンスsource-available の条項が適用Apache-2.0(完全にオープンソース)
ガバナンスベンダー主導コミュニティ主導
パイプラインモデルコンテナステップ(.drone.yml)コンテナステップ(.woodpecker.yml)
SCM サポートGitHub、GitLab、Gitea などGitHub、GitLab、Gitea/Forgejo など
ホスティングセルフホストのサーバー + runnerセルフホストのサーバー + agent

それぞれが本当に優れている点

Woodpecker は、明確にオープンソースなライセンスとコミュニティによるガバナンスを望み、ベンダーのライセンスに関する懸念がないチームに優れています。Gitea/Forgejo やセルフホストのコミュニティで人気があります。Drone は、商用サポートとエンタープライズ向けの機能を備えたオリジナルでより確立されたプロジェクトを好み、そのライセンス条項が用途に許容できる場合に優れています。

設定と移行

Woodpecker は Drone をフォークしたため、パイプラインの概念(コンテナステップ、イメージとしてのプラグイン)は非常に似ており、両者間の移動は通常は摩擦が少ないですが、プロジェクトが分岐するにつれて構文やプラグインの詳細は乖離しています。どちらの方向に移行する前でも、secrets の扱い、matrix build、プラグインの互換性の違いについて最新のドキュメントを確認しましょう。

セルフホストと運用

どちらもセルフホストです。サーバーと1つ以上の agent/runner を実行し、アップグレード、スケーリング、信頼性を自分で担います。より重い CI サーバーと比べて軽量であることが魅力の一部ですが、それでもあらゆるセルフホスト型 CI に伴うパッチ適用とキャパシティの運用負担を負うことになります。

結論

特に Gitea/Forgejo の構成では、完全にオープンソースでコミュニティが運営するコンテナ CI として Woodpecker を選びましょう。商用サポートとエンタープライズ機能を備えたオリジナルのプロジェクトが欲しく、そのライセンスを受け入れられるなら Drone を選びましょう。

関連ガイド