本文へスキップ

キューブ

キューブ

どんなコンテナイメージも、リクエストが来たときだけ稼働

イメージを、固有のアドレスを持つアプリとして実行。インスタンスはリクエストが来ると復帰し、途切れるとスリープして、中断したところから再開します。

ドキュメントを読む

数字で見るキューブ

インスタンスの復帰にかかる時間1
3.5 ミリ秒
リクエストの間隔が長いときの、スリープするまでの待ち時間2
0 ミリ秒
デプロイのロールバックに必要な呼び出し
1 回

3 ステップで

コマンドライン、API、SDK、MCP サーバーのどこからでも、同じ呼び出しを使えます。

始める前に

API キーを GLAC_API_KEY に設定します。

curl -fsSL https://glac.ai/install.sh | sh
export GLAC_API_KEY=ak_...
API=https://api.glac.ai/v1
AUTH="Authorization: Bearer $GLAC_API_KEY"
from glac import Glac
glac = Glac()
import { Glac } from "glac";
const glac = new Glac();
# give your agent the tools (Claude Code here)
claude mcp add glac -e GLAC_API_KEY=ak_... -- npx glac-mcp
  1. イメージをデプロイ

    準備ができたバージョンが、固有のアドレスでトラフィックを受け取ります。

    glac deploy ghcr.io/acme/api:1.4 \
      --name api --port 8080
    curl $API/apps -H "$AUTH" --json '{"name": "api",
      "image": "ghcr.io/acme/api:1.4", "port": 8080}'
    app = glac.cube.deploy("ghcr.io/acme/api:1.4",
                           name="api", port=8080)
    const app = await glac.cube.deploy("ghcr.io/acme/api:1.4",
      { name: "api", port: 8080 });
    cube_deploy {"app": "api", "image": "ghcr.io/acme/api:1.4",
                 "port": 8080}
  2. 呼び出す

    最初のリクエストでインスタンスが復帰します。

    curl https://api-‹project›.glac.run/
    curl https://api-‹project›.glac.run/
    import urllib.request
    print(urllib.request.urlopen(app.url).status)
    console.log((await fetch(app.url)).status);
    # from a sandbox made for the one command
    sandbox_run {"command":
      "curl -s https://api-‹project›.glac.run/"}
  3. ログで確認

    リクエストごとに 1 行、インスタンスを復帰させたかどうかと、その所要時間を表示します。

    glac cube logs api -f
    curl -N "$API/apps/api/logs?follow=true" -H "$AUTH"
    for line in app.logs(follow=True):
        print(line)
    for await (const line of app.logs({ follow: true }))
      console.log(line);
    cube_logs {"app": "api", "kinds": ["requests"]}

‹project› はプロジェクト ID の 6 文字です。API ではキューブを「app」と呼びます。

できること

  • リクエストが途切れるとスリープ。次のリクエストが来れば 3.5 ミリ秒で復帰。1

  • デプロイのたびにバージョンを作成:準備ができた時点でトラフィックが移り、1 回の呼び出しで戻せます。

  • キーごとに専用のインスタンス。最初のリクエストで作成され、メモリとディスクもそれぞれ専用です。

  • リージョンごとにスケール:リクエストに応じてインスタンスが起動し、設定した上限まで増えます。

  • 独自ドメイン。証明書の発行と更新は自動で行われます。

  • Compose ファイルの各サービスがそれぞれキューブになり、名前でアクセスできます。

ドキュメントを読む

画面はイメージです

比較

サービスを動かす一般的な 2 つの方法との比較。

常時稼働のサーバーゼロにスケールするコンテナキューブ
しばらくアクセスがなかった後の最初のリクエストすぐに応答イメージから再起動するまで待つ3.5 ミリ秒で復帰1
アイドル中のメモリとプロセス保持失われるスリープ中も保持(1 時間、またはキー別インスタンスが存続する間)
アイドル中の料金全額なしCPU は課金なし。保持するデータの分のみ
ほかとの分離方法仮想マシン多くは共有カーネル専用の microVM

主な用途

  • API と Web アプリ

    CPU は使った分だけミリ秒単位で課金。リクエストの合間はスリープします。

    glac deploy ghcr.io/acme/web:2.0 \
      --name web --port 3000
    curl https://web-‹project›.glac.run/
  • ユーザーやエージェントごとのバックエンド

    キーごとに専用のインスタンス。それぞれがメモリとディスクを持ちます。

    glac.cube.deploy(
      "ghcr.io/acme/agent:3",
      name="agent", port=8080,
      keys={"from": {"header": "User"}})
  • ジョブ

    最後まで実行して停止するイメージ。

    glac deploy ghcr.io/acme/report:1 \
      --name report --kind job
    glac cube logs report -f

料金と制限

すべての製品と同じく、使用したキューブのリソースで課金されます。 すべての料金とプラン

計測対象計測方法料金
CPU処理中の CPU 時間(ミリ秒単位)$0.01 / 100万 CPU ミリ秒$0.00001 / CPU 秒$0.036 / CPU 時間$26.28 / CPU 月
メモリ確保したメモリ(ミリ秒単位、128 MiB 刻み)$0.00222 / 100万 GiB-ミリ秒$0.00000222 / GiB-秒$0.008 / GiB-時間$5.84 / GiB-月
リクエストキューブ宛て、またはサンドボックスのリンク経由のリクエスト 1 件ごと$0.30 / 100万件
送信トラフィック北米・欧州北米・ヨーロッパから送信される 1 GB ごと$0.004 / GB
送信トラフィックアジア太平洋アジア太平洋から送信される 1 GB ごと$0.01 / GB
スリープ中の保持データ3スリープ中のインスタンスが保持するデータとスナップショット$0.00000761 / 100万 GB-ミリ秒$0.00000000761 / GB-秒$0.0000274 / GB-時間$0.02 / GB-月
ログ3キューブが出力し、保持されるログ(出力されたままのサイズ)$0.00000761 / 100万 GB-ミリ秒$0.00000000761 / GB-秒$0.0000274 / GB-時間$0.02 / GB-月

1 か月の見積もり

実際のワークロードで、1 か月の料金が有料プランと無料プランでそれぞれいくらになるかを示します。

JSON を受けて JSON を返し、データベースを 1、2 回呼び出します。

インスタンスは 1 日平均 23.8 時間稼働し、さらに 0.21 時間はメモリ上で一時停止しています。 CPU には、リクエスト自体の分に加えて 1 リクエストあたり 0.61 ミリ秒が計上されます。リクエストの合間の稼働時間と、停止・復帰のたびにかかる分です。

1 か月を 30 日とし、アカウントにはこのワークロードだけがあるものとします。 出典

有料プランでの 1 か月

$5.00

100万リクエストあたり $0.39

  • CPU1107万 CPU ミリ秒$0.11
  • メモリ90 GiB-時間$0.72
  • リクエスト1000万リクエスト$3.00
  • 送信トラフィック6 GB$0.02
定価での使用料金
$3.85
有料プランに含まれる分
−$3.85
有料プランの月額料金
$5.00

無料プランの上限を超える項目:リクエスト。

プランごとの制限

各プランのすべての制限
無料プラン有料プラン
キューブアカウントあたり10500
キューブ 1 つあたりのインスタンス各リージョンでの最大数5500
同時稼働数インスタンスとサンドボックス5500
インスタンスの最大サイズ2 vCPU、4 GiB8 vCPU、16 GiB
変数とシークレットキューブあたり64128
ログの保持期間3 日間30 日間

分離

インスタンスごとに仮想マシンを用意し、保持するすべてのデータをプロジェクトの暗号鍵で暗号化します。

セキュリティ
  • 専用の microVM

    専用のカーネルを持つ Firecracker microVM を、指定のイメージから起動します。

  • 周囲を jail で囲む

    空のルート、権限のないユーザー、個別のリソース制限。

  • API 経由でのみアクセス

    コマンドやファイルは、ネットワークではなく内部のエージェントを通じてやり取りします。

  • 許可したネットワークだけ

    プロジェクトごとのプライベートネットワークと、接続できるホストのルール。

  • プロジェクトの暗号鍵で暗号化

    ディスク、スリープ中のメモリ、スナップショット、ログは、マシンの外に出る前に暗号化されます。

  • 許可した範囲だけを開くキー

    API キーで操作できるのは 1 つのプロジェクトだけで、その中でもスコープが許す範囲に限られます。キーの操作は監査ログに記録されます。

さらに詳しく

プラットフォーム