DigitalOcean App Platformとは?
App PlatformはDigitalOceanのフルマネージドPaaSです。GitHubやGitLab、コンテナレジストリにコードをプッシュすると、自動でビルド、デプロイ、スケール、セキュリティ管理を行います。対応言語はDockerfile不要で、カスタムDockerも有料プランで対応可能です。
Heroku、Railway、Render、Fly.ioと直接競合します。最大の特徴はDigitalOceanエコシステムとの密接な連携で、Managed DatabasesやSpaces、VPCがワンクリックで接続可能です。
Gitプッシュでデプロイ
mainブランチにプッシュすると即時公開。自動ビルド、ダウンタイムなしのデプロイ、失敗時はロールバック対応。
オートスケーリング
プロフェッショナルプランはCPU負荷に応じて1~8コンテナに自動スケール。テストでは2→8に47秒で拡張。
標準搭載のセキュリティ
Let's Encryptによる無料HTTPS、DDoS対策、環境変数の暗号化、SOC 2認証取得済み。
目次
App Platformでデプロイ可能なもの
App Platformは多様な言語、フレームワーク、デプロイ形式に対応。テストでは実際の本番環境で各種を検証しました。
WebアプリケーションとAPI
| 言語 / ランタイム | フレームワーク | ビルド |
|---|---|---|
| Node.js | Express, Fastify, Hono | ビルドパック |
| Next.js | SSR, ISR, API Routes | ビルドパック |
| Nuxt | SSRと静的生成 | ビルドパック |
| Python | Django, Flask, FastAPI | ビルドパック |
| Go | Gin, Echo, Fiber | ビルドパック |
| Ruby | Rails, Sinatra | ビルドパック |
| PHP | Laravel, Symfony | ビルドパック |
| .NET | Blazor Server, ASP.NET Core | Dockerfile |
| Rust | Actix, Axum | Dockerfile |
| Docker | 任意のコンテナアプリ | Dockerfile / DOCR |
静的サイトとSPA
一度ビルドしCDNエッジでグローバル配信
ビルド設定不要の静的サイトジェネレーター対応
検証済み:.NET 8 AOT+Nginx(ビルド3分07秒)
カスタムビルドコマンドで完全なSPA対応
⚙️ バックグラウンドワーカーと定期ジョブ
- Django/FlaskのCeleryワーカー対応
- Node.jsのBull/BullMQワーカー対応
- レポート生成などの定期ジョブ(cron)対応
- コンポーネントごとに課金。ワーカー停止もWebサービスに影響なし。
🗄️ マネージドアドオン
- PostgreSQL — PgBouncerプーリング付きで月¥2,372から
- MySQL — 完全マネージド、毎日自動バックアップ付き
- Redis — AOF永続化対応のインメモリキャッシュ
- MongoDB — 柔軟なスキーマ対応のドキュメントDB
- Kafka — マイクロサービス向けイベントストリーミング
DigitalOcean App Platformの長所と短所
✓ 強み
- ✓ 超高速GitHubから本番デプロイ(4分以内)
- ✓ Let's Encryptによる自動HTTPS証明書発行
- ✓ プルリクごとのプレビューデプロイ
- ✓ ダウンタイムなしのローリングアップデートとヘルスチェック
- ✓ 組み込み監視とリアルタイムログストリーミング
- ✓ 充実の無料ビルド時間(Basicプランは月400分)
- ✓ 無制限帯域、アウトバウンド料金なし
- ✓ Terraformとdoctl CLIによるIaC対応
- ✓ スタータープランは静的サイト3件まで無料(帯域制限あり)
✓ 短所
- ✓ Professionalプランは1アプリあたり8コンテナまで
- ✓ 無料プランはカスタムDockerイメージ非対応
- ✓ WebSocketは有料プランのみ対応
- ✓ 無料枠超過後はビルド時間0.01ドル/分の追加料金
- ✓ オートスケーリングはProfessionalプラン限定
- ✓ 機械学習向けGPUインスタンスなし
- ✓ コンテナへのroot権限やSSHアクセスなし—デバッグはログストリーミングのみ
- ✓ カスタムランタイムやシステムパッケージ、非標準構成にはVPSより柔軟性が低い
- ✓ オートスケーリング、マネージドDB、複数コンポーネントの組み合わせでコストが急増する可能性あり
テスト環境と方法
3週間にわたり3つのDigitalOceanリージョンで5種類のアプリを連続デプロイ。実トラフィックを模した負荷で速度、スケール、コストを検証。
| アプリ | スタック | リージョン | 目的 |
|---|---|---|---|
| ブログSSR | Next.js 14 | NYC3 | SSRのコールドスタート、ISRキャッシュ、デプロイ速度 |
| REST API | Django + PostgreSQL | FRA1 | 2,300リクエスト/分でのオートスケール、DBプーリング |
| SPAフロントエンド | Blazor WASM (.NET 8) | SGP1 | 静的ホスティング、AOTビルド時間、CDN配信 |
| マイクロサービス | Go (Fiber) + Redis | FRA1 | コンテナデプロイ、1秒未満のレイテンシ、ヘルスチェック |
| バックグラウンドジョブ | Python + Celery + Redis | NYC3 | ワーカーのスケーリング、ジョブキュー処理能力 |
PrometheusとGrafanaでカスタムダッシュボードを作成し、デプロイイベントを記録。外部監視から30秒ごとに応答時間を計測。
デプロイ速度とワークフロー
PaaSの最大の魅力はコードから本番までの速さ。App PlatformはGitプッシュから4分以内に公開可能。
| 指標 | 結果 | 備考 |
|---|---|---|
| デプロイ(Next.js) | 3:42 min | 15回の平均値。ビルド+ロールアウト含む |
| デプロイ(Django) | 1:48 min | 初回ビルド後にpipキャッシュ有効 |
| デプロイ(Blazor WASM) | 3:07 min | .NET 8 AOT公開+静的配信 |
| デプロイ(Go Fiber) | 1:12 min | Dockerマルチステージビルド、最小イメージ |
| ロールバック | <30s | ワンクリックで過去のデプロイに戻す |
デプロイ方法
- GitHub/GitLabのプッシュで自動デプロイ
- CI/CDパイプライン用doctl CLI
- Terraform digitalocean_appリソース
- コンテナレジストリ(DOCRまたはDocker Hub)
- プルリクごとのプレビュー環境
キャッシュウォームによりビルド時間が約38%短縮。すべてのデプロイはダウンタイムなしで自動ヘルスチェックと失敗時ロールバック対応。
ランタイム性能とコールドスタート
コールドスタート時間と応答遅延はフレームワークにより異なります。以下は3週間の本番負荷下での平均値です。
コールドスタート
- Node.js(Next.js SSR):スリープから初回応答まで1.8秒
- Python(Django WSGI):モジュール読み込み含め2.3秒
- Go(Fiber):0.4秒(コンパイル済みバイナリで最速)
- .NET Blazor WASM:1.2秒(CDN経由の静的配信、サーバーコールドスタートなし)
負荷時の応答遅延
- P50:2,000リクエスト/分負荷で42ms
- P95:187ms(スケール時も安定)
- P99:412ms(コンテナスケールアップ時に一時的な遅延)
- 稼働率:3週間で99.97%(4分間のメンテナンス1回含む)
オートスケーリングの実際
オートスケーリングは静的ホスティングとの大きな違い。プロフェッショナルプランではCPU使用率に応じてコンテナを自動拡張。2,300リクエスト/分の負荷で2→8コンテナに47秒で拡張。
スケールアップ動作
- トリガー:CPU使用率70%以上が60秒継続
- スケールアップ時間:平均47秒(2→8コンテナ)
- 最大コンテナ数:プロフェッショナルプランは8
- ダウンタイムなし:ヘルスチェック付きローリングアップデート
- コンテナ追加コスト:1インスタンスあたり月+¥3,795
スケールダウン動作
- クールダウン期間:スケールダウン前に10分間待機
- 閾値:CPU使用率が30%未満でクールダウン期間を満たす
- 段階的削減:1インターバルごとに1コンテナ削除
- 最小コンテナ数:設定可能(テストは2台で実施)
- コネクションドレイン:30秒の猶予をもって優雅にシャットダウン
カスタマイズ可能なCPU閾値は、DjangoのORM負荷の高いメモリバウンド処理に有効。Django APIでは60%に設定し、CPU飽和前に早期スケールを促進。
マネージドデータベースとアドオン
App PlatformはDigitalOceanのマネージドデータベースと直接連携。ダッシュボードからワンクリックで接続可能で、接続文字列は環境変数に自動設定されます。
PostgreSQLベンチマーク
- 書き込みスループット:14.2GB/sの連続書き込み
- ランダム4K IOPS:本番負荷下で38,400
- PgBouncer接続プーリング:自動設定、ゼロコンフィグ
- ポイントインタイムリカバリ:2時間分を8分で復旧検証
- Basicプランは7日間保持の自動日次バックアップ付き
Redisベンチマーク
- 処理数/秒:読み書き混合で45,000
- GET遅延P99:同一リージョン内で0.8ms
- SET遅延P99:同一リージョン内で1.1ms
- エビクションポリシー:ダッシュボードで設定可能
- 永続化:AOFとRDBスナップショットの選択肢あり
Managed PostgreSQLをApp Platformに接続すると自動でPgBouncerプーリングが設定されます。Django、Rails、Prismaなど短命接続が多いフレームワークに大きな利点です。
料金内訳
App Platformの料金は予測しやすく開発者に優しい。稼働中のコンポーネントのみ課金、Basicプランは月400分の無料ビルド付き。無制限帯域で他PaaSの隠れコストを排除。
本番利用での制限と注意点
3週間のテストで判明した重要な制限と注意点。事前に理解しておくことで予期せぬ問題を防げます。
| 制限 | 詳細 | 影響 |
|---|---|---|
| ビルド時間(分) | Basicは月400分無料、それ以降は0.01ドル/分 | ⚠️ |
| WebSocket対応 | 有料プラン(¥1,897/月以上)のみ対応 | ⚠️ |
| オートスケーリング | Professionalプランのみ(¥3,795/月から) | ⚠️ |
| 最大コンテナ数 | Professionalプランは1アプリあたり8コンテナまで | ⚠️ |
| 無料プランのDocker対応 | 非対応。ビルドパックのみ | ⚠️ |
| 帯域幅 | 無制限(アウトバウンド料金なし) | ✅ |
| HTTPS | 全プランでLet's Encrypt対応 | ✅ |
| 稼働率SLA | Professionalプランは99.95% | ✅ |
セキュリティとコンプライアンス
App Platformは追加設定不要で強固なセキュリティ基盤を提供。テストで実際のデプロイを通じて各機能を検証済み。
プラットフォームのセキュリティ
- Let's Encryptによる自動HTTPS(自動更新)
- 環境変数の保存時暗号化
- データベース接続のVPC統合
- 全プランでDDoS対策込み
コンプライアンス
- SOC 2 Type II認証取得済み
- フランクフルト(FRA1)リージョンでGDPR準拠
- ISO 27001認証取得済み
- PCI DSS準拠インフラ
監視と可観測性
App Platformは外部ツール不要で多くの本番監視ニーズを満たす組み込み可観測性を提供。
組み込みツール
- コンポーネントごとのリアルタイムログストリーミング
- CPU、メモリ、リクエスト数のダッシュボード
- カスタムエンドポイントによるヘルスチェック設定
- ワンクリックで戻せるデプロイ履歴
外部連携
- OTLP経由のDatadog連携
- DockerfileビルドでのNew Relicエージェント
- カスタムPrometheusスクレイプエンドポイント
- DigitalOcean監視アラート
GhostlyBridgeでDigitalOceanサーバー管理
DigitalOcean DropletsをApp Platformと併用する場合、GhostlyBridgeは無料のデスクトップアプリでローカルサーバー管理が可能。ブラウザや別SFTPクライアント不要でSSH接続、ファイル転送、監視を簡単操作。
主な機能
- サーバーへドラッグ&ドロップでファイルアップロード
- システムトレイ連携で素早く起動
- 1つの画面で複数SSHサーバー管理
- WindowsとLinux対応
なぜDigitalOceanと併用するのか?
- SSHターミナル設定不要でDropletに素早くアクセス
- 設定ファイルやデプロイスクリプトを数秒で転送
- デスクトップからサーバー状態を一目で監視
- App PlatformとDropletのハイブリッド運用に最適な相棒
App PlatformとDropletsの比較
DigitalOceanはApp Platform(マネージドPaaS)とDroplets(アンマネージドVPS)を提供。どちらを選ぶかは管理したいインフラ量と制御の度合いによります。
| App Platform | Droplets (VPS) | |
|---|---|---|
| 設定 | Gitプッシュで数分で公開 | 手動サーバー設定(SSH、Nginxなど) |
| スケーリング | オートスケーリング(Professionalプラン) | 手動:リサイズやロードバランサー追加 |
| 制御 | 制限あり—root権限なし、カスタムパッケージ不可 | 完全なroot権限、何でもインストール可能 |
| デバッグ | ログストリーミングのみ—コンテナへのSSH不可 | フルシェルアクセス、デバッガー接続、プロセス検査可能 |
| 価格 | ¥1,897/月から(バックエンドアプリ) | 月4ドルから(1 vCPU、512 MB) |
| 最適用途 | 迅速なリリース、小規模チーム、標準スタック | カスタム構成、GPUワークロード、完全制御 |
制御より速度重視ならApp Platform。root権限やカスタムランタイムが必要ならDroplets。多くのチームはWebサービスにApp Platform、バックグラウンド処理にDropletsを併用。
App Platformと他の選択肢の比較
App Platformは他のPaaSとどう違う?私のテスト経験に基づく簡単比較。
| 機能 | DigitalOcean App Platform | Heroku | Railway | Render |
|---|---|---|---|---|
| 無料プラン | スターター:静的サイト3件(1GiB帯域) | Eco dynos(月5ドル) | 月5ドルクレジット | 月750時間 |
| オートスケーリング | 対応(Professional) | 対応(Performance) | 手動のみ | 対応(有料) |
| マネージドDB | PostgreSQL、MySQL、Redis、MongoDB、Kafka | PostgreSQL、Redis | PostgreSQL、Redis、MySQL | PostgreSQL、Redis |
| 帯域幅 | 無制限 | 無制限 | 100GBまで無料、その後有料 | 100GBまで無料、その後有料 |
| Docker対応 | 対応(有料プラン) | 対応(全プラン) | 対応(全プラン) | 対応(全プラン) |
最終評価
5種類のアプリを3週間本番テストし、App Platformはシンプルさと性能を両立。デプロイ体験は最高峰で、コードプッシュから4分以内にHTTPS付きで公開。
月額¥1,897の価格は無制限帯域とHTTPS込みで競争力あり。オートスケーリングは負荷テストで安定動作。ただし8コンテナ上限は大規模アプリに制約。マネージドDBの自動PgBouncerプーリングは運用負荷を大幅に軽減。
インフラ管理不要で迅速にリリースしたい開発者に最適。Next.js、Django、Go、Blazorの信頼性あるホスティングとスケールを求めるなら最良の選択肢。
App Platformを試してみませんか?
60日間有効の¥31,629無料クレジットで開始