Skip to content
Latchkey

Linux runnerとは?デフォルトで最も安価なCIマシン

Linux runnerはLinuxを実行するCI runnerで、ほとんどのworkflowのデフォルトであり、圧倒的に最も安価でプロビジョニングが最も速い選択肢です。

CI jobの圧倒的多数はLinux runner上で実行されます。安価で起動が速く、仮想化しやすく、事実上あらゆるツールでサポートされているため、特別な理由がない限り手を伸ばすデフォルトがubuntu-latestなのです。

なぜLinuxがデフォルトなのか

Linuxはマシンごとのライセンスなしに自由に仮想化できるため、プロバイダは高密度で安価なフリートを運用できます。ほとんどの言語、package manager、コンテナツールはLinux-firstなので、jobはそのまま動きます。

コスト面の優位性

Linuxのminuteは最も安価なtierです - WindowsはおよそLinuxの2倍、macOSは大きな倍率です。jobが特定の他のOSを必要としない限り、Linuxで実行するのが経済的な選択です。

Linuxで動くもの

  • Webおよびバックエンドのビルド、テスト、コンテナイメージのビルド。
  • ほとんどの言語: Node、Python、Go、Java、Rust、Ruby、PHP。
  • デプロイおよびインフラのjob(Terraform、kubectl、クラウドCLI)。

Linux runnerからより多くを引き出す

CIのminuteの大半が費やされるのはLinuxなので、マネージド料金が最も大きな影響を与えるのもLinuxです。LatchkeyのLinux runnerは通常GitHubホスト型よりおよそ70%安価で、cold startを取り除くwarm poolを備えています。

Linuxのフレーバーとアーキテクチャ

ほとんどのLinux runnerはUbuntu x86ですが、ネイティブなARMビルドのためにARM64 Linuxを実行したり、本番のベースイメージに合わせたディストリビューションを選んだりもできます。runnerのOSをデプロイ先に合わせることで、「CIでは動くが本番で壊れる」という驚きを減らせます。

重要なポイント

  • Linux runnerはLinuxを実行し、ほとんどのCI jobのデフォルトです。
  • 最も安価なtierであり、プロビジョニングが最も速いです。
  • ほとんどの言語やツールはLinux-firstなので、jobはそのまま動きます。
  • CIのminuteの大半はLinuxなので、マネージド料金の恩恵はそこで最も大きくなります。

関連ガイド