Fly.io

コンテナデプロイ、グローバル分散仮想マシン、プログラム可能なネットワークを組み合わせ、従来のPaaSよりも高いインフラ制御能力を提供する開発者向けクラウドプラットフォーム。

公式サイト

情報確認日: 2026年7月13日 ·出典を見る

ツール情報

種類
開発ワークフロー
対応プラットフォーム
Web, macOS, Linux, Windows
無料プラン
非対応
オープンソース
非対応
独自の API キーを使用
非対応
ローカルモデル
非対応
Fly.io

概要

適した用途

  • コンテナ化されたWebアプリケーションとAPI
  • リージョン配置の恩恵を受ける、レイテンシに敏感なサービス
  • 生のクラウドインフラを管理せずに、従来のPaaS以上の制御を求めるチーム
  • マルチリージョンサービスや顧客ごとに隔離されたワークロード
  • 自動停止・起動を利用できる断続的なアプリケーション

強み

  • リージョン配置とマシンのライフサイクルをきめ細かく制御可能
  • Docker中心のデプロイにより、ワークロードのポータビリティを維持
  • 強力なグローバルルーティングとプライベートネットワークのプリミティブ
  • 秒単位の計算課金。自動停止と組み合わせることで断続的なワークロードのコストを抑制可能
  • オープンソースのCLI(flyctl)とプログラム可能なMachines API

制約とトレードオフ

  • 運用ゼロの完全な抽象化されたホスティング体験を求めるチーム
  • 共有ネットワークファイルシステムを必要とするアプリケーション
  • Docker、ネットワーク、本番運用に不慣れな初心者
  • GPUマシンの提供が終了するため、新規のGPUワークロード
  • アプリケーションレベルの複製戦略を持たないステートフルなマルチリージョンシステム
  • フルマネージドなPaaSよりも運用知識が必要
  • Fly Volumesは単一リージョンのローカルストレージであり、自動複製されない
  • 計算、ストレージ、ネットワーク、証明書、IPなど、従量課金コストの監視が必要
  • 新規組織向けには、永続的な無料枠ではなく制限付きのトライアルが提供される
  • GPUマシンは非推奨であり、2026年8月1日以降は利用不可となる予定

使い始める

料金と利用上限

料金は $2.02

Free Trial$0 / 最大7日間

トライアルのリソース制限内で、合計2時間のVM稼働または7日間のアクセスのいずれか早い方まで利用可能です。

Pay As You GoFrom $0.0028 / 1時間あたり

基本リージョンのshared-cpu-1xマシン(256MB RAM)。30日間の連続稼働で約$2.02です。

Machine Reservations40% off / プリペイド

対象マシンの利用料金を前払いすることで、計算コストを削減できます。

Managed PostgresFrom $38 / 月額

基本的な高可用性クラスター。プロビジョニングされたストレージは、1GBあたり月額$0.28で別途請求されます。

Paid SupportFrom $29 / 月額

Standard、Premium、Enterpriseのサポートパッケージが用意されています。

料金確認日: 2026年7月13日 · 利用上限、モデルの料金、サブスクリプションは別々に請求される場合があります。

機能と詳細

デプロイと計算リソース

  • Dockerベースのアプリケーションデプロイ
  • 高速起動するFly Machines
  • リージョンごとのマシン配置
  • flyctlとMachines APIによる制御
  • 自動停止、自動起動、オートスケーリング

ネットワーキング

  • Fly Proxyによるエニーキャストルーティング
  • WireGuardを介したプライベートIPv6ネットワーク
  • パブリック、プライベート、およびFlycastサービス
  • TLS終端とカスタムドメイン
  • オプションの専用IPおよび静的エグレスIP

データと運用

  • ローカル永続ストレージ(Fly Volumes)
  • Managed Postgres
  • メトリクス、ログ、およびヘルスチェック
  • シークレット管理とスコープ付きアクセストークン
  • GitHub Actionsによるデプロイサポート

Fly.ioを選ぶ理由

Fly.ioは、フルマネージドなPaaS(Platform as a Service)と生のインフラの中間に位置するサービスです。アプリケーションはコンテナイメージとしてパッケージ化されますが、開発者はマシンのサイズ、ライフサイクル、プロセスレイアウト、およびリージョン配置を直接制御できます。

このモデルは、標準的なPaaSでは制約が多すぎると感じつつも、仮想ネットワーク、ロードバランサー、インスタンスグループ、低レベルのクラウド権限の管理が不必要なオーバーヘッドになる場合に有用です。主な価値は単なるデプロイの利便性ではなく、グローバルに分散された計算リソースをアプリケーションレベルのプリミティブとして扱える点にあります。

Fly.ioはAIコーディングアシスタントやIDEではありません。AI開発における役割は、コーディングツールによって生成されたエージェントのバックエンド、API、推論ゲートウェイ、サンドボックス、キュー、その他のサービスのホスティングにあります。なお、GPUを使用する新規プロジェクトについては、別のプロバイダーを検討するか最新の移行ガイダンスを確認してください。Fly.ioの現在の料金ドキュメントでは、GPUマシンは非推奨(deprecated)とされており、2026年8月1日以降は利用できなくなる予定です。

主なワークフロー

典型的なデプロイは、既存のアプリケーションとDockerfileから始まります。fly launchコマンドがプロジェクトをスキャンしてアプリケーションを作成し、fly.tomlを生成します。これがサービス、ポート、ヘルスチェック、リージョン、マウント、プロセス、スケーリング設定を記述したバージョン管理可能な定義ファイルとなります。

運用ループは意図的にCLI中心に設計されています:

  1. ローカルでビルドするか、Fly.io側でコンテナイメージをビルドする。
  2. fly deployでデプロイする。
  3. ランタイムのシークレットはリポジトリ外に保存する。
  4. ログ、ヘルスチェック、メトリクス、マシンの状態を確認する。
  5. トラフィックの変化に応じて、マシンのサイズ、数、またはリージョン配置を変更する。
  6. GitHub ActionsなどのCIシステムを通じてデプロイを自動化する。

このワークフローはワンクリックのPaaSよりも明示的です。設定作業は増えますが、インフラの決定がコードとして可視化され、環境間での再現が容易になります。

プラットフォーム構築者にとっての重要な差別化要因は「Machines API」です。デプロイを単なるリリースイベントとして扱うのではなく、アプリケーションからプログラムによってマシンの作成、停止、再開、更新、削除を行うことができます。これにより、顧客ごとの隔離環境、一時的なコード実行環境、開発ワークスペース、バックグラウンドワーカー、オンデマンドのエージェント用サンドボックスなどのパターンが実現可能です。

向いている用途

Fly.ioは、グローバルにアクセスされるAPI、Websocketサービス、マルチプレイヤーの同期サービス、開発ツール、およびユーザーの近くに計算リソースを配置してネットワーク遅延を削減したいアプリケーションのバックエンドに特に適しています。

また、顧客やタスクごとに隔離されたランタイムを必要とする製品にも実用的です。マシンを使い捨ての実行ユニットとして管理でき、プライベートネットワークによって内部サービスをパブリックインターネットから分離できます。ただし、このパターンを採用する場合でも、インフラの境界だけで全てのアプリケーションリスクが解決すると過信せず、強力なテナント隔離、シークレットの境界設定、リソース制限、不正利用防止策を設計する必要があります。

低トラフィックのサービスでは、自動停止(autostop)と自動起動(autostart)を利用して計算コストを削減できます。コスト計画には、CPU実行時間だけでなく、停止したマシンのルートファイルシステム、ボリューム、スナップショット、アウトバウンド通信、無料枠を超える証明書、専用IPリソースなどの課金対象も考慮する必要があります。

ステートフルなアプリケーションには注意が必要です。Fly VolumesはローカルのNVMeストレージであり、特定のリージョンの1台のサーバーに紐付けられています。共有ネットワークディスクではありません。ボリュームは1つのマシンにアタッチされ、データは別のボリュームに自動的に複製されません。これは開発環境、キャッシュ、再構築可能な状態、または独自の複製戦略を持つアプリケーションには適していますが、マネージドなマルチリージョンストレージと混同しないようにしてください。

他のツールとの比較

Railwayと比較すると、Fly.ioはリージョン配置、ネットワーク、マシンのライフサイクルをより詳細に制御できます。Railwayは、インフラレベルの制御よりも、洗練されたプロジェクトダッシュボードやマネージドサービスのワークフローを優先するチームにとって使いやすい傾向があります。

Renderと比較すると、Fly.ioはプログラム可能なインフラに近い存在です。Renderはより伝統的なサービス指向のPaaSモデルに従っていますが、Fly.ioはマシン、プロセスグループ、プライベートネットワーク、および明示的なリージョントポロジーの単位で考えることを推奨しています。

Herokuと比較すると、Fly.ioはよりDockerネイティブでインフラを意識した運用モデルを採用しています。ビルドパックやDyno、マネージドなアドオンに慣れているチームにはHerokuの方が理解しやすいですが、Fly.ioはカスタムネットワークやデプロイアーキテクチャに高い柔軟性を提供します。

Google Cloud Runと比較すると、Fly.ioは長寿命のマシン、カスタムプロセスレイアウト、プライベートネットワーク、またはローカルボリュームを必要とするワークロードに適しています。Cloud Runは、マネージドなサーバーレスモデルでスケールさせる、ステートレスなリクエスト駆動型コンテナに適しています。

Northflankは、パイプラインと環境管理が統合されたコンテナデプロイを求めるチームにとって、Fly.ioに近い選択肢となります。Fly.ioは、マシンの直接的なオーケストレーションや地理的な配置が製品アーキテクチャの中核である場合に、より魅力的な選択肢となります。

推奨される設定

本番環境のFly.io構成は、ステートレスなアプリケーションイメージと明示的なプライマリリージョンから始めるべきです。アプリケーションをfly.tomlで設定した内部ポートの0.0.0.0にバインドし、ヘルスチェックを追加し、アグレッシブな自動停止を有効にする前に正常なシャットダウン動作を確認してください。

可用性が重要な場合は、少なくとも2台のマシンを実行してください。1台のマシンは開発環境や中断が許容されるサービスには適していますが、障害やデプロイ時にダウンタイムが発生します。マルチリージョンへの配置は、やみくもに増やすのではなく、実測されたユーザーのレイテンシとデータのトポロジーに基づいて決定してください。

永続的なデータはコンテナのルートファイルシステムの外に置いてください。アプリケーション側で複製やフェイルオーバーを管理したくない場合は、Managed Postgresなどのマネージドデータベースを利用してください。Fly Volumesは意図的にローカルの永続性が必要な場合にのみ使用し、スナップショットが有効であっても独立したバックアップを維持してください。

安定した運用のために:

  • fly.tomlをアプリケーションコードと一緒にコミットする。
  • 重要なランタイムやベースイメージのバージョンを固定する。
  • Web、ワーカー、スケジューラー、マイグレーションのプロセスを分離する。
  • リポジトリにコミットされた環境ファイルではなく、シークレット(Secrets)を使用する。
  • 自動再起動やスケーリングを有効にする前にヘルスチェックを設定する。
  • 予算アラートを設定し、ストレージ、スナップショット、ネットワーク、IPの料金を確認する。
  • 本番のCIワークフローで使用するflyctlのバージョンを固定する。
  • 重要な本番トポロジーを変更する前に、別のアプリケーションでデプロイをテストする。

移行時の注意点

Heroku、Render、またはRailwayから移行する場合、通常はデプロイコマンドを置き換えるだけでは不十分です。プロセスモデル、リスニングアドレス、内部ポート、ファイルシステムの前提条件、バックグラウンドジョブ、リリースコマンド、データベース接続、およびヘルスチェックの動作を見直してください。

コンテナのルートファイルシステムは一時的なものです。ユーザーによるアップロード、生成されたアセット、SQLiteデータベース、またはそこに書き込まれたランタイムの状態は、再起動やデプロイ時に消失する可能性があります。本番移行前に、永続データは適切なボリューム、オブジェクトストレージ、またはマネージドデータベースに移動してください。

データベースを移行するチームは、Managed Postgres、外部プロバイダー、またはマシン上でのセルフマネージドデータベースのいずれを使用するかを決定する必要があります。最後の選択肢は制御性は高いですが、バックアップ、リカバリ、複製、アップグレード、監視、および障害対応の責任がアプリケーションチームに移ります。

ネットワークについても個別の移行チェックリストが必要です。アウトバウンドIPアドレスはデフォルトで静的ではなく、リージョンをまたぐプライベート通信は課金対象となる場合があります。また、IPホワイトリストに依存するサービスには静的エグレスアドレスが必要になる場合があります。トラフィックを切り替える前に、DNS、証明書の発行、プロキシヘッダー、Websocketの動作、およびクライアントIPの処理を確認してください。

Fly.ioが最も威力を発揮するのは、チームがデプロイトポロジーをアプリケーション設計の一部として扱う場合です。インフラ層を完全に隠蔽することを期待するチームには運用負荷が高すぎると感じられるかもしれませんが、フルスケールのクラウドスタックを導入せずにプログラム可能な計算リソースを必要とするチームにとっては、非常にバランスの良い選択肢となるでしょう。

対応モデルとデータプライバシー

プライバシーとデータの取り扱い

Fly.ioはホスト型インフラプロバイダーであり、アプリケーションのトラフィック、運用メタデータ、および保存されたワークロードはそのプラットフォーム上で処理されます。Fly.ioの責任共有モデルに基づき、アプリケーションのセキュリティ、データの分類、リージョンの選択、バックアップ、およびアクセス制御はユーザーが責任を負います。

ガイド、レビュー、トラブル対処

公開済みのガイドはまだありません。上記の公式ドキュメントをご参照ください。

製品の更新情報

確認済みの製品更新はまだありません。フォローすると関連する新着情報を「保存済み」で確認できます。

関連コンテンツの更新履歴を見る

代替ツール

出典と確認記録

確認日は当サイトが情報を確認した日です。製品のリリース日は上に別途表示しています。

掲載情報の修正履歴

  1. 現在の従量課金制の計算、ストレージ、ネットワーク、Managed Postgres、サポート、およびフリートライアル情報を確認。公式料金ドキュメントにおいて、GPUマシンは非推奨であり2026年8月1日以降利用不可と明記されています。

  2. フリートライアルが合計2時間のVM稼働または7日間のアクセスのいずれか早い方に制限されていることを反映。

  3. 新規顧客向けにレガシープランが廃止され、従量課金制に移行されました。