Skip to main content
Square Cloud は Deno を Node.js ランタイム上で実行します。Deno を npm パッケージとしてプロジェクトに追加し、npx deno でアプリを起動します。

始める前に

  • 手元のマシンに Deno。公式の Deno インストーラーか、npm パッケージ (npm install deno) でインストールします。
  • Square Cloud のアカウント。メールアドレスまたは GitHub で登録できます。
  • 有効なプラン。プランを確認し、プロジェクトに合うものを選んでください。

Square Cloud の設定

ダッシュボードからアプリケーションをアップロードする場合、このセクションは飛ばしてかまいません。ダッシュボードが squarecloud.app 設定ファイルを自動で作成します。

設定ファイルのリファレンス

squarecloud.app ファイルは、アプリケーションの実行方法を Square Cloud に伝えます。メインファイル、メモリ、ランタイムのバージョン、名前、そして Web サイトの場合はサブドメインを指定します。
まず、Square Cloud で npx deno コマンドが使えるように、プロジェクトの dependencies に deno パッケージを追加します。devDependencies には追加しないでください。本番環境ではインストールされません。
次に RUNTIME=nodejs を設定し、START フィールドで必要な権限を付けて Deno でアプリを起動します。アプリの種類ごとの完全な設定ファイルです。
squarecloud.app
権限 (--allow-net、--allow-env、--allow-read など) は、アプリが使うものに合わせて調整してください。deno.json で定義したタスクを使う場合は、START=npx deno task start で起動します。

Square Cloud が実行する内容

  • START は直接実行されます。設定ファイルのパラメータの詳細については、設定パラメータを参照してください。
  • アプリに node_modules フォルダがない場合、Square Cloud は起動前に npm install --no-audit --no-fund を実行し、deno と package.json に記載された npm モジュールもインストールします。ランタイムが NODE_ENV=production を設定するため、devDependencies のパッケージはインストールされません。node_modules がすでに存在する場合、インストールの手順はスキップされます。

ウェブサイトと API のポートとホスト

Deno.serve() はデフォルトでポート 8000 をリッスンし、環境変数 PORT を読み込みません。ポートとホストは自分で指定してください。Square Cloud は PORT を 80 に設定し、0.0.0.0 はコンテナの外部からの接続を受け付けます。
main.ts
上の START の例のとおり、PORT の読み込みには --allow-env が、配信には --allow-net が必要です。

プロジェクトの準備

必要なファイル

  • ZIP のルートに置いた squarecloud.app。
  • エントリーファイル。たとえば main.ts。
  • dependencies に deno を記載した package.json。これがないアップロードは INVALID_DEPENDENCY で失敗します。
  • 必要に応じて、タスク、インポート、その他の Deno の設定用の deno.json または deno.jsonc。
設定ファイル(squarecloud.app)は zip ファイルのルートに配置する必要があります。そうでない場合、Square Cloud はデプロイ時にそれを見つけることができません。

含めないもの

  • node_modules: Square Cloud はアップロードからこのフォルダを削除し、初回起動時に package.json から依存関係をインストールします。
  • deno_dir または .cache/deno: Deno のキャッシュディレクトリで、サーバー上で Deno が作り直します。
  • ロックファイル: CLI と VS Code 拡張機能は、デフォルトで package-lock.json、yarn.lock、pnpm-lock.yaml を除外します。package-lock.json の正確なバージョンが必要な場合は、squarecloud.ignore に !package-lock.json を追加して含めてください。

トラブルシューティング

Deno は、許可しない限りネットワークと環境変数へのアクセスをブロックします。エラーに表示されたフラグ (--allow-net や --allow-env など) を START コマンドに追加してください。
ボットをホストするために必要な RAM の最小量は 256MB で、 サイト/API の場合は 512MB です。ただし、アプリケーションのサイズや複雑さによっては、 アプリケーションがメモリ不足でクラッシュするのを避けるために、 より多くの RAM を割り当てることをお勧めする場合があります。
その他の問題については、トラブルシューティングを参照してください。

デプロイ

ダッシュボード経由

1

アップロードページにアクセス

アップロードページにアクセスし、プロジェクトの zip ファイルをアップロードします。
2

環境を設定

zip をアップロードした後、プロジェクトの名前、メインファイルまたはランタイム環境、その他の設定を構成する必要があります。
ウェブプロジェクトをアップロードする場合は、必ず「Web Publication」を選択し、プロジェクトにサブドメインを設定してください。
3

プロジェクトをデプロイ

最後に「Deploy」ボタンをクリックして、プロジェクトを Square Cloud にホストします。
デプロイ後、ダッシュボードからプロジェクトのステータスとログを監視できます。
Square Cloud へのアプリケーションのアップロード
4

アプリが稼働していることを確認

最初のデプロイは、通常 1 分もかからずに完了します。ダッシュボードでアプリケーションのステータスが running になるのを待ち、起動時のエラーがないかログを確認してください。
ウェブサイトや API をデプロイした場合は、ブラウザで https://<your-subdomain>.squareweb.app を開き、アプリケーションが応答することを確認してください。ボットをデプロイした場合は、コマンドを送信してオンラインになっていることを確認してください。
アプリが起動しませんか?よくある原因と修正方法はトラブルシューティングガイドを参照してください。

CLI 経由

この方法を使用するには、プロジェクトのルートに squarecloud.app という名前の設定ファイルが必要です。このファイルは、アプリケーションの実行方法を Square Cloud に伝えます。

設定ファイルガイド

アプリケーションの環境を定義する squarecloud.app 設定ファイルの作成方法を学びます。
1

CLI をインストール

Square Cloud CLI をインストールします。すでにお持ちの場合は、同じコマンドを実行すると更新されます:
2

ログイン

次のコマンドを実行します。ブラウザが開くので、そこでログインを承認すれば CLI の準備は完了です。API キーをコピーする必要はありません。スクリプトや CI については、CLI の認証を参照してください。
3

プロジェクトをアップロード

プロジェクトのフォルダで次のコマンドを実行します。CLI は squarecloud.ignore に記載されたものを除いて現在のフォルダを zip にし、アップロードします:
自分で作成した zip をアップロードするには、--file で指定します:
4

アプリが稼働していることを確認

最初のデプロイは、通常 1 分もかからずに完了します。ターミナルから直接、アプリケーションのステータスとログを確認してください。
ウェブサイトや API をデプロイした場合は、ブラウザで https://<your-subdomain>.squareweb.app を開き、アプリケーションが応答することを確認してください。ボットをデプロイした場合は、コマンドを送信してオンラインになっていることを確認してください。
アプリが起動しませんか?よくある原因と修正方法はトラブルシューティングガイドを参照してください。

次のステップ

環境変数

シークレットや設定をコードから切り離し、実行時に読み込みます。

カスタムドメイン

Standard プラン以上で、独自ドメインからアプリを配信します。

トラブルシューティング

起動しないアプリや応答しないサイトを修正します。

お問い合わせ

技術的な問題が解決しない場合は、専門のサポートチームがお手伝いします。お問い合わせいただければ、どのような問題でも喜んで解決をサポートいたします。サポートの質の高さも、開発者が Google と Trustpilot で Square Cloud に402 件のレビューで 4.9/5という評価をつけている理由の 1 つです。