解決策

セルフホストCI/CDランナー(GitHub Actions、GitLab、Woodpecker)向けVPS

Cutter 16 · $62/moClipper 16 · $92/mo
短い回答

セルフホストランナーはすぐに元が取れます。月額$62のCutter 16は、ホスト型CIの数千分に相当し、キャッシュがローカルにあるためビルドも高速です。専用コア4〜6個と16GBでほとんどのビルドマトリックスを処理できます。NVMeを使用してください。依存関係のインストールとコンテナレイヤーの展開はほぼすべてIOバウンドです。

必要なもの

ci/cdランナーの仕様の下限
リソース実際に必要なもの
CPU専用コア4〜8個。ビルドは並列化に適しています。
RAM標準的なマトリックスには16GB、大規模なモノレポには32GB。
ディスク320GB NVMe。キャッシュ、イメージ、アーティファクトが蓄積されます。
内核コンテナおよびVMベースのジョブ向けネスト仮想化

推奨プラン

Cutter

Cutter 16

$ 58.9 /month

合計$176.70 · 5%割引

vCPU
6 × 専用
RAM
16 GB
ストレージ
320 GB NVMe SSD
転送量
15 TB
IPv4 / IPv6
1 / /64 routed
設定
Clipper

Clipper 16

$ 87.4 /month

合計$262.20 · 5%割引

vCPU
8 × 専用
RAM
16 GB
ストレージ
400 GB NVMe Gen4 SSD
転送量
30 TB
IPv4 / IPv6
1 / /64 routed
設定
Clipper

Clipper 32

$ 165.3 /month

合計$495.90 · 5%割引

vCPU
12 × 専用
RAM
32 GB
ストレージ
800 GB NVMe Gen4 SSD
転送量
40 TB
IPv4 / IPv6
1 / /64 routed
設定

推奨ロケーション

このワークロードでは、通常ロケーションの選択が最も重要です—レイテンシが支配的になるか、管轄権が支配的になるかのどちらかだからです。

これにOnionVPSを選ぶ理由

  • ネスト仮想化により、DockerベースとVMベースの両方のジョブが動作します。
  • NVMe上のローカル依存関係キャッシュにより、コールドなホスト型ランナーと比較して、通常のビルド時間が大幅に短縮されます。
  • 分単位の課金(多忙な週にペナルティが発生)ではなく、月額固定料金。
  • アカウント検証が不要なため、ランナーは夜中の3時にスクリプトでプロビジョニングできます。

設定方法

  1. Ubuntu 24.04でCutter 16をデプロイ

    6コアと16GBでほとんどのプロジェクトをカバーできます。

  2. ランナーエージェントをインストール

    フォージに応じてGitHub Actionsランナー、gitlab-runner、Woodpeckerを選択。

  3. 一時コンテナでジョブを実行

    ジョブごとに新しいコンテナを使用することで、あるビルドが次のビルドに悪影響を与えるのを防ぎます。

  4. パッケージキャッシュをコンテナの外に永続化

    npm、cargo、pip、Dockerレイヤー用にホストディレクトリをマウントします。

  5. ランナーを登録してタグを付ける

    タグにより、重いジョブをここにルーティングし、軽いジョブはホスト型ランナーに残せます。

よくある質問

セルフホストCIランナーはホスト型分課金よりも安いですか?

月あたり数千分を超えるとほぼ常に安くなります。$62インスタンスは継続的に稼働し、ホスト型CIは分単位で課金され、コールドスタートのたびに依存関係を再ダウンロードします。

セルフホストランナーでDockerビルドを実行できますか?

はい。ネスト型仮想化と完全なrootアクセスにより、buildx、Docker-in-Docker、rootlessビルドはすべて動作します。

セルフホストランナーは公開リポジトリで安全ですか?

一時的で隔離されたランナーのみです。公開リポジトリはプルリクエストから任意のコードを実行できるため、そのようなランナーにシークレットや内部ネットワークへのアクセスを決して与えないでください。