1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【保存版】Cloud Runって何?プログラミング初心者のための完全ガイド

Last updated at Posted at 2025-12-21

はじめに

「Cloud Runって何?」

プログラミングを学び始めると、Webアプリケーションを「どこで動かすか」という壁にぶつかります。自分のパソコンでは動くけど、インターネットに公開するにはサーバーが必要。でもサーバーって高いし、管理も大変そう...。

この記事では、そんな悩みを解決するGoogle Cloud Runについて、サーバーやクラウドの基礎知識がない方でも理解できるよう、図解を交えて徹底的に解説します。

この記事の対象読者

  • プログラミング初心者で、クラウドやサーバーもよく分かっていない方
  • 「Cloud Runって何?」と検索してこの記事にたどり着いた方
  • 自分で作ったWebアプリを公開したいけど、サーバーの選び方が分からない方

この記事で得られること

  • サーバー、クラウド、コンテナの基本的な理解
  • Cloud Runの概念と必要性
  • 自前サーバー管理 vs Cloud Run の違い(As-Is / To-Be分析)
  • 主要クラウドサービスの選び方(Fit & Gap分析)

1. 前提知識の整理:サーバー・クラウド・コンテナとは

Cloud Runを理解するには、まず「サーバー」「クラウド」「コンテナ」という3つの概念を知る必要があります。難しく考える必要はありません。身近な例で説明します。

サーバー = 24時間営業のコンビニ

サーバーは、インターネット上でプログラムを動かし続けるコンピュータです。あなたのWebアプリを24時間365日、いつでも利用できる状態にしておく「お店」のようなものです。

自分のパソコンでWebアプリを動かすと、パソコンを閉じたら誰もアクセスできなくなります。だから、常に電源が入っている専用のコンピュータ(サーバー)が必要なのです。

クラウド = レンタルサーバー屋さん

クラウドは、サーバーを「借りられる」サービスです。自分でサーバーを買って管理するのは大変なので、Google、Amazon、Microsoftなどの大企業が運営する巨大なサーバー群を、必要な分だけ借りて使います。

用語 身近な例 説明
物理サーバー 自社ビルを建てる 自分でサーバーを買って管理する
クラウド 賃貸マンション 必要な分だけ借りて使う

コンテナ = 引っ越し用の段ボール

コンテナは、アプリケーションとその動作に必要なものを「ひとまとめ」にしたパッケージです。

引っ越しを想像してください。荷物をバラバラに運ぶと「あれがない」「これが足りない」となりますが、段ボールにまとめておけば、どこに運んでもすぐに使えます。コンテナも同じで、アプリケーションを動かすのに必要なもの(プログラム、ライブラリ、設定ファイルなど)をすべて1つのパッケージにまとめます。

Cloud Runの構成要素(ER図)

Cloud Runは、いくつかの階層構造で管理されています。

この図は「ER図(Entity-Relationship Diagram)」と呼ばれ、要素同士の関係を表します。

  • PROJECT:Google Cloudの管理単位(請求やアクセス権限の単位)
  • SERVICE:1つのWebアプリやAPI(公開URLが割り当てられる)
  • REVISION:デプロイのバージョン(更新するたびに新しいリビジョンが作られる)
  • CONTAINER:実際に動くコンテナの設定

ここまでのポイント

サーバー = プログラムを24時間動かすコンピュータ
クラウド = サーバーを借りられるサービス
コンテナ = アプリを動かすのに必要なものをまとめたパッケージ


2. Cloud Runとは

一言でいうと

Cloud Run(クラウド・ラン)は、Google Cloudが提供する 「コンテナ化したアプリケーションを、サーバーの管理なしで動かせる実行基盤(サーバーレス・プラットフォーム)」 です。

もっと簡単に言うと、 「プログラムをコンテナ(Dockerなど)に入れて渡せば、あとはGoogleが勝手にサーバーを立てて、アクセス数に合わせて増やしたり減らしたりしてくれるサービス」 です。

身近な例で理解する

Cloud Runは「タクシー配車アプリ」に例えると分かりやすいです。

自分で車を所有すると、使わない時でも駐車場代や保険料がかかります。でもタクシーなら、乗った時だけお金を払えばOK。Cloud Runも同じで、アクセスがない時は料金がかからないのです。

Cloud Runが解決する課題

Cloud Runを使わない場合、以下の問題が発生します。

問題 具体的な状況
初期費用が高い サーバーを借りるだけで月額数千円〜数万円かかる
管理が大変 OSのアップデート、セキュリティ対策を自分でやる必要がある
スケールが難しい アクセスが急増した時に対応できない
無駄なコスト 誰も使っていない深夜でも同じ料金がかかる

3. Cloud Runの主な特徴

Cloud Runがなぜ人気なのか、主なメリットは以下の3点です。

3.1 自動スケーリング(ゼロまで減る)

アクセスが増えれば自動で処理能力を増やし、アクセスがゼロになればサーバーもゼロになります。これにより、 「誰も使っていない時間は料金がかからない」 というコスト効率の良さが最大の特徴です。

🌙 深夜(アクセス0件).png

3.2 サーバー管理が不要(サーバーレス)

OSのアップデート、メモリの増設、負荷分散(ロードバランサー)の設定などを自分でする必要がありません。開発者は「コードを書くこと」だけに集中できます。

3.3 言語やライブラリの制限がない

コンテナ技術を使っているため、Python、Node.js、Go、Java、PHP、Rubyなど、どんな言語でも、どんな特定のライブラリでも動かすことができます。


4. なぜCloud Runが必要なのか

自前サーバー管理の辛さ

Cloud Runを使わない場合、開発者はサーバーを自分で管理する必要があります。

問題1:初期設定が大変

やるべきこと:
├── サーバーを契約
├── OSをインストール
├── セキュリティ設定(ファイアウォール、SSH鍵など)
├── Webサーバー(Nginx/Apache)の設定
├── SSL証明書の取得と設定
├── アプリケーションのデプロイ
└── 監視・ログ収集の設定

初心者が一からやると、数日〜数週間かかることも珍しくありません。

問題2:運用が終わらない

サーバーを立てた後も、以下の作業が永遠に続きます。

  • セキュリティパッチの適用(毎月)
  • SSL証明書の更新(年1〜2回)
  • ディスク容量の監視と対応
  • 障害対応(夜中でも...)

問題3:スケールの壁

アクセスが急増した時、サーバー1台では処理しきれません。複数台のサーバーを用意し、ロードバランサーで負荷分散する必要がありますが、これは非常に複雑です。


5. As-Is / To-Be 分析:自前管理 vs Cloud Run

ここでは、ビジネス分析でよく使われる「As-Is / To-Be フレームワーク」を用いて、自前サーバー管理とCloud Run導入の違いを明確にします。

As-Is(現状):自前サーバー管理の課題

現状の課題一覧

カテゴリ 課題 影響度
コスト 使っていなくても固定費がかかる
運用 セキュリティパッチ適用が手動
スケール アクセス急増に即座に対応できない
学習 インフラ知識の習得に時間がかかる
可用性 障害時の復旧が自己責任

To-Be(あるべき姿):Cloud Run導入後

導入後の改善効果

カテゴリ 改善内容 効果
コスト 使った分だけ課金(ゼロスケール)
運用 インフラ管理はGoogle任せ
スケール 自動スケーリング標準搭載
学習 Dockerの基礎知識だけでOK
可用性 複数ゾーンで自動冗長化

Before / After 比較表

観点 Before(自前管理) After(Cloud Run)
初期設定 サーバー契約、OS設定、セキュリティ設定... gcloud run deploy 1コマンド
HTTPS対応 SSL証明書を自分で取得・設定・更新 自動で発行・管理
スケーリング 手動でサーバー追加、ロードバランサー設定 完全自動(設定不要)
コスト 月額固定(使わなくても払う) 従量課金(使った分だけ)
障害対応 自己責任(夜中でも対応) Google SREチームが24時間監視

6. デプロイフローの違い(シーケンス図で理解)

実際のデプロイフローを、シーケンス図で比較してみましょう。

自前サーバーの場合

自前管理の問題点

  1. ステップ2-5:毎回SSHでログインして手動作業
  2. ステップ6-10:HTTPS対応だけで複数の外部サービスとやり取り
  3. ステップ11:設定ミスでサイトがダウンするリスク

Cloud Runの場合

Cloud Runのメリット

  1. ステップ2-5:Dockerイメージを作ってpushするだけ
  2. ステップ6-10gcloud run deploy 1コマンドで全自動
  3. ステップ11-13:スケーリングも自動、手作業ゼロ

7. Fit & Gap 分析:どのサービスを選ぶべきか

クラウドには似たサービスがたくさんあります。「Fit & Gap 分析」を用いて、あなたの状況に最適なサービスを選びましょう。

主要サービスの概要

サービス プロバイダ 種類 難易度 特徴
Cloud Run Google Cloud コンテナ実行 ★☆☆ ゼロスケール、最も簡単
App Engine Google Cloud PaaS ★☆☆ コードだけで動く、歴史が長い
GKE Google Cloud Kubernetes ★★★ 最高の自由度、複雑
AWS Lambda AWS 関数実行 ★★☆ イベント駆動、15分制限
AWS Fargate AWS コンテナ実行 ★★☆ ECS/EKSと連携
Azure Container Apps Microsoft コンテナ実行 ★★☆ Cloud Runに近い

Fit & Gap 分析表

あなたの状況(左列)と各サービスの適合度を確認してください。

判断軸 Cloud Run App Engine GKE Lambda Fargate Azure Container Apps
初心者で簡単に始めたい ×
Dockerを使いたい
コストを最小限に ×
15分以上の処理が必要 ×
Kubernetesの知識がある - - -
AWSを既に使っている
Azureを既に使っている
GPU処理が必要 × × ×

選定フローチャート

Gap(不足・課題)の対処法

各サービスには弱点もあります。事前に把握しておきましょう。

サービス Gap(弱点) 対処法
Cloud Run コールドスタート(初回起動が遅い) 最小インスタンス数=1に設定(ただし常時課金)
App Engine コンテナのカスタマイズ性が低い Flexible環境を使うか、Cloud Runへ移行
GKE 学習コストが高い、常時課金 GKE Autopilotで管理負担を軽減
AWS Lambda 15分のタイムアウト制限 Step Functionsで分割、またはFargateへ
AWS Fargate ゼロスケールができない Lambda併用、またはCloud Runへ
Azure Container Apps GPUサポートが限定的 AKSを検討

8. 各サービスの詳細紹介

8.1 Cloud Run(Google Cloud)

Google Cloudが提供するサーバーレスコンテナ実行環境。2019年にGA(一般提供)となり、2025年現在は最も人気のあるサーバーレスプラットフォームの1つです。

特徴

  • ゼロスケール対応:アクセスがなければインスタンス0、料金0
  • HTTPS自動発行:独自ドメインも簡単に設定可能
  • GPU対応:NVIDIA L4 GPUでAI推論も可能(2024年〜)

基本的な使い方

# ステップ1:Dockerイメージを作成
docker build -t gcr.io/[PROJECT-ID]/my-app .

# ステップ2:Container Registryにプッシュ
docker push gcr.io/[PROJECT-ID]/my-app

# ステップ3:Cloud Runにデプロイ
gcloud run deploy my-app \
  --image gcr.io/[PROJECT-ID]/my-app \
  --platform managed \
  --region asia-northeast1 \
  --allow-unauthenticated

料金体系(2025年版)

項目 課金タイミング 無料枠(毎月)
vCPU リクエスト処理中のみ 180,000 vCPU秒
メモリ リクエスト処理中のみ 360,000 GiB秒
リクエスト数 100万件ごと 200万リクエスト

参考:Cloud Run pricing - Google Cloud

8.2 App Engine(Google Cloud)

Google Cloudの最古参PaaS(Platform as a Service)。2008年から提供されており、コードをアップロードするだけで動く手軽さが特徴です。

特徴

  • コードだけでOK:Dockerを知らなくても使える
  • 自動スケーリング:Standard環境はミリ秒単位で起動
  • 豊富な実績:長年の運用で安定性が高い

基本的な使い方

# app.yamlを作成
runtime: python39

# デプロイ
gcloud app deploy

参考:App Engine - Google Cloud

8.3 GKE(Google Kubernetes Engine)

Kubernetesのフルマネージドサービス。最も自由度が高い反面、学習コストも高めです。

特徴

  • Kubernetes完全対応:オープンソースのKubernetesをそのまま使える
  • 高度なネットワーク制御:Service Mesh、Istioなどと連携
  • Autopilotモード:ノード管理を自動化(2021年〜)

参考:Google Kubernetes Engine - Google Cloud

8.4 AWS Lambda(Amazon Web Services)

AWSのサーバーレス関数実行サービス。イベント駆動型の処理に最適です。

特徴

  • イベント駆動:S3へのアップロード、API Gatewayからのリクエストなどで起動
  • 豊富な連携:AWSの100以上のサービスと統合
  • ミリ秒課金:1ms単位で課金

料金体系

項目 単価(US East) 無料枠(毎月)
リクエスト $0.20 / 100万件 100万リクエスト
実行時間 $0.0000166667 / GB秒 400,000 GB秒

制限事項

  • 実行時間:最大15分
  • メモリ:128MB〜10GB
  • ペイロード:6MB(同期)、256KB(非同期)

参考:AWS Lambda Pricing

8.5 AWS Fargate(Amazon Web Services)

AWSのサーバーレスコンテナ実行環境。ECSまたはEKSと組み合わせて使用します。

特徴

  • ECS/EKS対応:既存のコンテナオーケストレーションと連携
  • VPC統合:プライベートネットワーク内で実行可能
  • Spotインスタンス:最大70%割引(中断あり)

料金体系

項目 単価(US East, Linux/x86)
vCPU $0.04048 / vCPU時間
メモリ $0.004445 / GB時間

注意点

  • ゼロスケール非対応:最低1タスクは起動したまま(常時課金)
  • Cloud Runより約40%高い:同等スペックでの比較

参考:AWS Fargate Pricing

8.6 Azure Container Apps(Microsoft Azure)

MicrosoftのサーバーレスコンテナプラットフォームCloud Runに最も近い設計思想を持っています。

特徴

  • ゼロスケール対応:Cloud Runと同様
  • Dapr統合:マイクロサービス開発を支援するランタイム内蔵
  • KEDA対応:Kubernetesベースのイベント駆動オートスケーラー

料金体系

項目 無料枠(毎月)
vCPU 180,000 vCPU秒
メモリ 360,000 GiB秒
リクエスト 200万リクエスト

参考:Azure Container Apps Pricing


9. 料金シミュレーション(月額目安)

Cloud Runの料金を、実際のアクセス数を想定してシミュレーションします。

前提条件

  • リージョン:東京(asia-northeast1)
  • スペック:1 vCPU、512MB メモリ
  • 処理時間:1リクエストあたり500ミリ秒(0.5秒)
  • 同時実行数:80(1インスタンスで80リクエストを並行処理)
  • 為替:1ドル = 150円

シミュレーション結果

規模 1日のアクセス数 月間リクエスト数 月額料金の目安 状態
個人・開発用 100件 3,000件 0円 無料枠内で余裕
小規模API 3,000件 90,000件 0円 まだ無料枠に収まる
中規模サイト 30,000件 900,000件 数百円程度 無料枠を超え始める
ビジネス利用 100万件 3,000万件 約5,000円〜 転送料が加算

無料枠のパワー(毎月リセット)

Google Cloudは太っ腹な無料枠を提供しており、以下の分までは毎月タダです。

  • リクエスト数:最初の200万リクエスト/月
  • CPU時間:最初の180,000 vCPU秒/月(1vCPUなら計50時間分)
  • メモリ:最初の360,000 GiB秒/月

サービス間の料金比較

同等スペック(1 vCPU、2GB メモリ)で24時間稼働した場合の月額目安:

サービス 月額目安 ゼロスケール 備考
Cloud Run 約3,000円〜 アクセス0なら0円
App Engine (Standard) 約3,500円〜 アクセス0なら0円
AWS Lambda 約2,500円〜 15分制限あり
AWS Fargate 約7,000円〜 × 常時起動が前提
Azure Container Apps 約3,000円〜 Cloud Runと同等
GKE Autopilot 約15,000円〜 × 最低1ノード必要

※ 料金は概算です。実際の料金は利用状況により変動します。


10. 2025年の注目アップデート

Cloud Runは急速に進化しています。最近の注目アップデートを紹介します。

GPU対応(NVIDIA L4)

NVIDIA L4 GPUを搭載したインスタンスが利用可能になり、生成AIモデルの推論などをサーバーレスで安価に実行できるようになりました。

Gemini連携

Google CloudのコンソールからAI(Gemini)にコードを生成させたり、トラブルシューティングを相談したりしながらデプロイできるようになっています。

ワーカープール

HTTPリクエストを介さない、KafkaやPub/Subなどのキューを処理するための専用リソースも追加されました。


まとめ

Cloud Runとは

コンテナ化したアプリケーションを、サーバーの管理なしで動かせるGoogleのサーバーレスプラットフォーム。

なぜ必要か

  • 自前サーバー管理は初期設定・運用・スケーリングが大変
  • Cloud Runなら「コマンド1つ」でデプロイ、あとは全自動

サービスの選び方

状況 推奨サービス
初心者でとにかく簡単に始めたい Cloud Run または App Engine
AWSを既に使っている AWS Lambda(短時間処理)または Fargate(長時間処理)
Azureを既に使っている Azure Container Apps
大規模・複雑なシステム GKE Autopilot

どんな時にCloud Runを使うべき?

  • スタートアップや新規事業:アクセス数が読めないため、ゼロスケーリングでコストを抑えたい
  • マイクロサービス:サービスごとに言語を使い分け、素早くデプロイしたい
  • AI推論エンジン:必要な時だけGPUを使って安く推論を行いたい

次のステップ

  1. Google Cloudのアカウントを作成(無料枠あり)
  2. 簡単なDockerイメージを作成
  3. gcloud run deploy でデプロイしてみる

Cloud Runは、最初は「よく分からないサービス」に見えますが、使いこなせるようになるとWebアプリ公開のハードルが劇的に下がります。ぜひ実際に手を動かして試してみてください!


参考リンク

Google Cloud

AWS

Microsoft Azure

比較記事

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?