> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Square Cloud でアプリが起動しない: EADDRINUSE、Cannot Find Module、INVALID_DEPENDENCY

> Square Cloud での EADDRINUSE（ポート使用中）、Cannot find module / ModuleNotFoundError、INVALID_DEPENDENCY、CONTAINER_TEMPORARILY_SUSPENDED、KEEP_CALM、better-sqlite3 のバインディングエラー、LACK_OF_RAM を解決します。

アプリケーションが起動時にクラッシュする、またはまったくオンラインにならない場合、コンソールログにほぼ必ず正確な原因が示されています。以下から該当するエラーを見つけてください。

## EADDRINUSE（ポートが既に使用中）

**意味:** アプリが同じネットワークポートを二重にバインドしようとしています。

**発生理由:** コード内で 2 つのサーバーが起動しているか、`app.listen(...)` のようなリスナー呼び出しが（例えばリクエストごと、再接続ごとなど）イベントハンドラの中で毎回再作成され、起動時に一度だけ実行されるべきものが繰り返されています。

**修正方法:**

1. ポート `80` で待ち受ける Web サーバーを **1 つだけ**、**一度だけ**バインドします。
2. コード内に `.listen()`（Node）や `run()`（Python/Flask/Django）の呼び出しが複数ないか検索し、重複を削除します。
3. listen の呼び出しが、複数回発火しうるコールバックの中ではなく、起動ファイルのトップレベルにあることを確認します。

```javascript theme={null}
// Correct: one listener, at the top level
app.listen(80, "0.0.0.0", () => {
  console.log("Server running");
});
```

<Note>Square Cloud の動的アプリはホスト `0.0.0.0`、ポート `80` にバインドする必要があります。`localhost`/`127.0.0.1` や他のポートにバインドすると、サイトタイムアウトが発生します。</Note>

## "Cannot find module"（Node.js）と ModuleNotFoundError（Python）

**意味:** コードがインポートしているパッケージが依存関係ファイルに含まれていません。

**発生理由:** ライブラリが `package.json` の `dependencies`（Node）や `requirements.txt`/`pyproject.toml`（Python）に記載されていないため、ローカル環境では動作していても、プラットフォーム上ではインストールされません。

**修正方法:**

1. 不足しているパッケージを、有効なバージョンとともに依存関係ファイルに追加します。
2. 依存関係ファイル自体がアップロードした `.zip` に含まれていることを確認します。
3. アプリケーションを再起動します。Node.js の場合、クリーンな再インストールには事前に `node_modules` の削除が必要です（`node_modules` と `package-lock.json` を削除してから再起動すると、プラットフォームがクリーンな状態から再インストールします）。

## INVALID\_DEPENDENCY

**意味:** 依存関係ファイル内のエントリが存在しないか、無効/利用不可なバージョンを指しているため、デプロイが失敗しました。

**修正方法:** `package.json` / `requirements.txt` / `pyproject.toml` を開き、該当するエントリのパッケージ名やバージョン範囲の誤りを修正して、再デプロイしてください。

## CONTAINER\_TEMPORARILY\_SUSPENDED

**意味:** コンテナがプラットフォームによって一時停止されました。

**発生理由:** このステータスは、自動的なリソース悪用防止機能によって発生し、最も多い原因は次のとおりです。

* **OOM（RAM）:** アプリが設定された `MEMORY` を超過しようとし、プロセスが強制終了されました。
* **CPU の悪用:** アプリが割り当てられた CPU を継続的に超過したため、ノードを保護するためにプロセスが一時停止されました。
* **リクエストの悪用:** `.squareweb.app` ドメインやメッセージング API（Discord、Telegram、WhatsApp）へのトラフィックの安全上限に達しました。ほとんどの場合、実際の人気ではなく、無限ループやキャッシュの欠如が原因です。

**修正方法:** アカウントに紐づいたメールを確認してください。どのトリガーが原因で一時停止になったかが記載されています。再起動する前に、根本原因（メモリリーク、ホットループ、暴走したリクエストパターン）を修正してください。

## KEEP\_CALM

**意味:** snapshot 関連の操作が短時間に連続してリクエストされました。

**発生理由:** あなた（または自動化）が、snapshot リクエストの間に設けられた短いクールダウンが経過する前に再度 snapshot をリクエストしたか、現在のプランの1日あたりの snapshot 上限に達しました。これは `DAILY_SNAPSHOTS_LIMIT_REACHED`（プランの1日あたりの上限が使い切られたことを明示的に示す）とは異なる点に注意してください。`KEEP_CALM` は、1日あたりの回数とは無関係に、アプリごとのより短いリクエスト間クールダウンでも発生することがあります。

**修正方法:** 数分待ってから再度試してください。1日の上限に達した場合は、翌日まで待つか、自動 snapshot の上限が高いプランにアップグレードしてください。

## better-sqlite3 / ネイティブバインディングのエラー

**意味:** アプリが `better-sqlite3`（直接、または `quick.db` 経由）を使用している場合に、`Could not locate the bindings file` のようなエラーが発生します。

**発生理由:** インストールされている `better-sqlite3` のバージョンがプラットフォームの現行 Node.js LTS より古いため、そのプリビルド済みネイティブバインディングがランタイムと一致しません。

**修正方法:**

1. `better-sqlite3` を `12.5.0` 以降に更新します（`quick.db` を使用している場合は `9.1.7` 以降に更新してください）。
2. `node_modules` **と** `package-lock.json` を削除します。
3. アプリケーションを再起動し、現行のランタイムに対してネイティブバインディングを再ビルドするクリーンな再インストールを行います。

## LACK\_OF\_RAM

**意味:** アプリケーションが割り当てられた RAM を超過したか、カーネルがメモリ不足（OOM）を通知したため、ホストの安定性を保護するためにプロセスが終了されました。

**修正方法:**

1. メモリリークがないかアプリをプロファイリングします（Node.js: `--inspect`、Python: `memory_profiler`）。
2. インメモリキャッシュを、際限なく肥大化する Map やキャッシュのままにせず、Redis などの外部ストアに移行します。
3. コントロールパネルでアプリケーションに割り当てる `MEMORY` の値を増やします。

RAM の最小値、CPU の割り当て、ネットワーク/ストレージの制限の詳細については、[制限と制約のページ](/ja/platform/limitations-and-restrictions#lack_of_ram)を参照してください。

<Tip>上記のエラーとログを照らし合わせても解決しない場合は、サポートチームが具体的なクラッシュ内容を一緒に確認します。</Tip>

## お問い合わせ

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