# codespace の作成と削除のトラブルシューティング

この記事では、ストレージや構成の issue など、codespace の作成または削除時に発生する可能性のある一般的な issue に対するトラブルシューティング手順について説明します。

## codespace を作成する

### codespace を作成するアクセス権がない

GitHub Codespaces は、すべてのリポジトリで使用できるわけではありません。 コードスペースを作成するためのオプションが表示されない場合は、そのリポジトリで GitHub Codespaces を使用できない可能性があります。

個人アカウントの GitHub Codespaces の月単位の使用量が残っている場合、または支払い方法と使用制限を設定している場合は、任意のパブリック リポジトリのコードスペースを作成できます。

また、このプライベート リポジトリが個人アカウントによって所有されている場合は、少なくとも読み取りアクセス権を持っているプライベート リポジトリの codespace を作成することもできます。 リポジトリがプライベート 組織が所有している場合、組織またはその親企業の設定に応じて、そのリポジトリのコードスペースを作成できる場合とできない場合があります。

リポジトリの codespace を作成できないときは、organization (組織) またはエンタープライズの以下の設定のいずれかが原因の場合があります。

* 組織と企業の所有者は、組織のプライベート GitHub Codespacesと内部にアクセスできるユーザーを選択できます。 詳しくは、「[組織の GitHub Codespaces の有効化または無効化](/ja/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization)」をご覧ください。
* 組織およびエンタープライズの所有者は、組織のプライベート リポジトリの一部またはすべてで、フォークを無効にすることができます。 リポジトリへの読み取りアクセス権しか持っておらず、それをフォークできない場合は、そのリポジトリの codespace は作成できません。 詳細については、 [AUTOTITLE を](/ja/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)参照してください。

codespace を作成できるかどうかに影響する可能性がある organization (組織) と Enterprise (エンタープライズ) の設定の詳細については、「[組織の GitHub Codespaces の有効化または無効化](/ja/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization)」を参照してください。

個人アカウントに含まれる使用量と使用制限の設定について詳しくは、「[GitHub Codespaces の課金](/ja/billing/concepts/product-billing/github-codespaces)」と「[従量制課金製品の支出を管理するための予算を設定する](/ja/billing/how-tos/set-up-budgets)」を参照してください。

### 作成時に codespace が開かない

codespace を作成しても開かない場合:

1. キャッシュまたはレポートの問題が発生した場合は、ページを再度読み込んでみてください。
2. GitHub Codespaces ページに移動します。<https://github.com/codespacesし、そこに新しいコードスペースが表示されているかどうかを確認します。> このプロセスで、codespace が正常に作成されたが、ブラウザーに報告できなかった可能性があります。 新しい codespace が一覧表示されている場合は、そのページから直接開くことができます。
3. 一時的な通信エラーを除外するように、リポジトリの codespace の作成を再試行します。

GitHub Codespacesが使用可能なリポジトリのコードスペースをまだ作成できない場合は、サポートにお問い合わせください。 詳しくは、「[GitHub Codespacesのサポートと連携する](/ja/codespaces/troubleshooting/working-with-support-for-github-codespaces)」をご覧ください。

### codespace の作成に失敗する

codespace の作成に失敗する場合は、クラウドの一時的なインフラストラクチャの問題 (codespace の仮想マシンのプロビジョニングに関する問題など) が原因の可能性があります。 あまり一般的ではない失敗の理由は、コンテナーのビルドに 1 時間以上かかる場合です。 この場合、ビルドは取り消され、codespace の作成は失敗します。

> \[!NOTE]
> 正常に作成されなかった codespace は使用できなくなり、削除する必要があります。 詳しくは、「[codespace を削除する](/ja/codespaces/developing-in-a-codespace/deleting-a-codespace)」をご覧ください。

codespace を作成し、作成に失敗した場合:

1. GitHubの [\[状態\] ページ](https://githubstatus.com)で、アクティブなインシデントを確認します。
2. [
   GitHub Codespaces ページ](https://github.com/codespaces)に移動し、コードスペースを削除して、新しいコード空間を作成します。
3. コンテナーがビルドされている場合は、ストリーミング中のログを確認し、ビルドがスタックしていないことを確認します。 1 時間以上かかるコンテナー ビルドは取り消され、作成が失敗します。

   これが発生する可能性がある一般的なシナリオの 1 つは、ユーザー入力のダイアログが表示され、回答を待つスクリプトが実行されている場合です。 この場合は、対話型プロンプトを削除して、ビルドを非対話型で完了できるようにします。

> \[!NOTE]
> ビルド中にログを表示するには:
> \*
> **ブラウザーの場合**、ビルド プロセスの最初の手順に数秒以上かかる場合は、\[codespace のセットアップ] ページが表示されます。
> **\[ログの表示]** をクリックします。
>
> ![ブラウザーの \[codespace の設定\] ページのスクリーンショット。 \[ログの表示\] ボタンが濃いオレンジ色の枠線で強調表示されています。](/assets/images/help/codespaces/web-ui-view-logs.png)
>
> *

\*\*
VS Code デスクトップ アプリケーションで\*\*、表示される \[リモート接続のセットアップ] ポップアップ メッセージで **\[コード空間のビルド**] をクリックします。

> ![VS Code のポップアップ メッセージのスクリーンショット。\[リモート接続の設定: codespace のビルド\] と表示されています。](/assets/images/help/codespaces/vs-code-building-codespace.png)
>
> ログメッセージは VS Code のターミナルに表示されます。

1. ビルドに時間がかかるコンテナーがある場合は、プレビルドを使用して codespace の作成を速めることを検討してください。 詳しくは、「[プレビルドの構成](/ja/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-prebuilds)」をご覧ください。

## codespace を削除する

codespace は、次の方法でのみ削除できます。

* codespace を作成したユーザー
* organization (組織) が所有する codespace の organization (組織) の所有者
* 保持期間の終了時の自動的な削除

詳細については、「[codespace を削除する](/ja/codespaces/developing-in-a-codespace/deleting-a-codespace)」および「[codespace の自動削除を構成する](/ja/codespaces/setting-your-user-preferences/configuring-automatic-deletion-of-your-codespaces)」を参照してください。

## コンテナー ストレージ

codespace を作成すると、ストレージ容量に限りがあるため、時間の経過とともにスペースを解放する必要がある場合があります。
GitHub Codespaces ターミナルで次のいずれかのコマンドを実行して、記憶域を解放してみてください。

* `sudo apt autoremove` を使用して、使用されなくなったパッケージを削除します。
* `sudo apt clean` を使用して apt キャッシュをクリーンアップします。
* `sudo find / -printf '%s %p\n'| sort -nr | head -10` で、codespace 内でサイズが上位 10 個のファイルを参照します。
* ビルド成果物やログなど、不要なファイルを削除します。

より破壊的なオプション:

* `docker system prune` を使用して (すべての画像を削除する場合は `-a` を、すべてのボリュームを削除する場合は `--volumes` を付加します)、未使用の Docker イメージ、ネットワーク、コンテナーを削除します。
* 追跡されていないファイルを作業ツリーから削除します: `git clean -i`。

## 構成

開発コンテナー構成を変更してコンテナー エラーが発生した場合、codespace は回復モードで動作し、エラー メッセージが表示されます。

```shell
This codespace is currently running in recovery mode due to a container error.
```

作成ログを確認し、必要に応じて開発コンテナーの構成を更新します。 詳しくは、「[GitHub Codespaces のログ](/ja/codespaces/troubleshooting/github-codespaces-logs)」をご覧ください。

その後、codespace を再起動するか、コンテナーをリビルドしてみてください。 コンテナーの再構築の詳細については、「[開発コンテナーの概要](/ja/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)」を参照してください。