アップロードとデプロイのエラー
Square Cloud がアップロードを拒否すると、ダッシュボード、CLI、API から次のコードが返されます。何もデプロイされないため、原因を修正してからもう一度アップロードしてください。INVALID_DEPENDENCY
意味: アップロードにその言語の依存関係ファイルがないか、ファイルが空です。Square Cloud は、何かをインストールする前に、このファイルが zip のルートにあることを確認します。 修正方法: 依存関係ファイルを zip のルートのsquarecloud.app と同じ場所に置き、空でないことを確認してください: package.json(Node.js、Bun、Deno)、requirements.txt または pyproject.toml(Python)、Cargo.toml(Rust)、Gemfile(Ruby)、go.mod または go.work(Go)、mix.exs(Elixir)。その後、もう一度アップロードしてください。パッケージ名やバージョンの誤りは、後からログにインストールエラーとして表示されます。
KEEP_CALM
意味: あなた(または自動化)が、再起動、アップロード、snapshot などの操作を短時間に繰り返しました。 修正方法: 少し待ってからもう一度試してください。拒否された操作が実行されなかっただけで、KEEP_CALM が実行中のアプリケーションを停止したり影響を与えたりすることはありません。snapshot が代わりに DAILY_SNAPSHOTS_LIMIT_REACHED で失敗した場合は、プランの 1 日あたりの snapshot 数を使い切っているため、翌日まで待ってください。
Web サイトが表示されない
意味: アプリケーションはデプロイされていますが、そのアドレスを開くと、サイトの代わりに次のいずれかのページが表示されます。- “The website took too long to respond”: Square Cloud はアプリケーションを見つけましたが、応答がありませんでした。
- “This site couldn’t be found”: そのアドレスには Web サイトが公開されていません。
-
サーバーがポート
80、ホスト0.0.0.0で待ち受けるようにします。localhost、127.0.0.1、またはほかのポート(3000、5173、8080 など)にバインドしたサーバーには到達できません。ランタイムは環境変数PORTとHOSTをこれらの値に設定しているので、それを読み取ってください。 - ログを開きます。アプリケーションがクラッシュしている、または依存関係のインストールやビルドの最中である場合、サイトはまだ応答できません。ログに表示されたエラーを修正するか、ビルドが終わるまで待ってください。
-
MEMORYがビルドに十分な余裕を与えているかを確認します。フレームワークのビルドで RAM が不足すると、アプリケーションはLACK_OF_RAMで停止します。
- アドレスを確認します。正しいアドレスは、設定ファイルのサブドメインを使った
https://<SUBDOMAIN>.squareweb.appです。 - デプロイした直後であれば、アドレスが公開されるまで最大 1 分ほど待ちます。
SUBDOMAINなしでデプロイしたアプリケーションは Web サイトではなく、後から Web サイトにすることもできません。SUBDOMAINを設定して、新しいアプリケーションとしてもう一度アップロードしてください。- カスタムドメインの場合は、DNS がまだ反映中の可能性があります。ドメインがまだ反映されない理由を参照してください。
EADDRINUSE(ポートが既に使用中)
意味: アプリが同じネットワークポートを二重にバインドしようとしています。 発生理由: コード内で 2 つのサーバーが起動しているか、listen(...) の呼び出しが、起動時に一度だけではなく、イベントハンドラの中で(たとえばリクエストごと、再接続ごとに)再作成されています。
修正方法:
- ポート
80、ホスト0.0.0.0で待ち受ける Web サーバーを 1 つだけ、一度だけ起動します。 - コード内に
.listen()(Node.js)やrun()(Python/Flask/Django)の呼び出しが複数ないか検索し、重複を削除します。 - listen の呼び出しが、複数回発火しうるコールバックの中ではなく、起動ファイルのトップレベルにあることを確認します。
“Cannot find module”(Node.js)と ModuleNotFoundError(Python)
意味: コードがインポートしているパッケージがインストールされていません。 発生理由:- ライブラリが
package.jsonのdependencies(Node.js)やrequirements.txt/pyproject.toml(Python)に記載されていないため、ローカル環境では動作していても、プラットフォーム上ではインストールされません。 - Node.js で、パッケージが
devDependenciesにしかありません。アプリケーションはNODE_ENV=productionで実行されるため、npm installは開発用の依存関係をスキップします。
- 不足しているパッケージを、有効なバージョンとともに
dependencies(または Python の依存関係ファイル)に追加します。 - 依存関係ファイル自体がアップロードした zip に含まれていることを確認します。
- アプリケーションを再起動します。Node.js の場合、依存関係は
node_modulesが存在しないときにしかインストールされません。ダッシュボードのファイルマネージャーでnode_modules(アップロードしていればpackage-lock.jsonも)を削除してから再起動すると、クリーンな状態から再インストールされます。
better-sqlite3 / ネイティブバインディングのエラー
意味: アプリがbetter-sqlite3(直接、または quick.db 経由)を使用している場合に、Could not locate the bindings file のようなエラーが発生します。
発生理由: インストールされている better-sqlite3 のバージョンがプラットフォームの現行 Node.js LTS より古いため、そのプリビルド済みネイティブバインディングがランタイムと一致しません。
修正方法:
better-sqlite3を12.5.0以降に更新します(quick.dbを使用している場合は9.1.7以降に更新してください)。node_modulesとpackage-lock.jsonを削除します。- アプリケーションを再起動し、現行のランタイムに対してネイティブバインディングを再ビルドするクリーンな再インストールを行います。
リソース制限による停止
ログの最後が[SQUARE-SHIELD] LACK_OF_RAM、LACK_OF_CPU、ABUSE_REQUESTS になっている場合、またはアプリケーションの起動が CONTAINER_TEMPORARILY_SUSPENDED で失敗する場合は、リソースを超えたために Square Cloud がアプリケーションを停止しています。それぞれの意味と解決方法はステータスの表で説明しています。
時刻が数時間ずれる
アプリケーションは UTC で実行されます。09:00 に予定したジョブは UTC の 09:00 に実行され、コードがログに出力する時刻も UTC です。コード内で時刻を変換するか、ヘルプセンターのアプリケーションのタイムゾーンを変更する方法を参照してください。関連ガイド
- 設定ファイル: すべてのフィールドと、それぞれで発生するエラー。
- 環境変数: 秘密情報を設定し、再起動して反映します。
- Discord ボットのエラーとデータベース接続エラー。

