Claude Media
Claude CodeをAWS Cloud9で動かすインスタンス要件

Claude CodeをAWS Cloud9で動かすインスタンス要件

AWS Cloud9は2024年7月に新規受付を終了しました。既存環境でも既定の小さいインスタンスではClaude Codeの4GB以上RAM要件を満たせません。

Claude CodeがAWS Cloud9で重い・起動しないときに疑う原因

AWS Cloud9でClaude Codeを動かそうとして、インストールは終わるのに動作が重い、セッション中に応答が返らなくなる、ということがあります。原因の多くはメモリ不足です。

Claude Codeのシステム要件は4GB以上のRAMを求めています。ところがCloud9がコンソールやCLIで最初に提示するインスタンスは、それよりずっと小さく設計されています。Cloud9のチュートリアルが例示するCLIコマンドは--instance-type t2.microで、これはRAMが1GiBのインスタンスです。コンソールの既定選択についても、ドキュメントには「RAMとvCPUが少なめの選択肢」だとだけ書かれており、チュートリアル用途を想定した値のままです。Claude Codeの要件には最初から足りていません。

AWS Cloud9は新規受付を終了済み — 使えるのは既存アカウントだけ

Cloud9をこれから使い始めようとしている場合、まずこの前提を確認してください。AWSは2024年7月25日付でAWS Cloud9への新規顧客のアクセスを終了しました。すでにCloud9環境を持つ既存顧客は、これまでどおりサービスを利用できます。

AWSは既存顧客向けにセキュリティ・可用性・パフォーマンスの改善は続けるとしていますが、新機能の追加は予定していません。つまり、これから新規にAWSアカウントを作ってCloud9でClaude Codeを試す、という選択肢自体が存在しない状態です。すでにCloud9環境を持っている人だけが対象になります。新規に環境構築を検討しているなら、Claude Platform on AWSでClaude Codeを使う場合のBedrockとの違いも比較材料になりますし、AWSは移行先としてAWS IDE Toolkits(VS Code / JetBrains拡張)やAWS CloudShellを案内しています。

Claude Codeのシステム要件とCloud9のインスタンス選択肢

Claude Codeのシステム要件は次のとおりです。

項目要件
OS要件macOS 13.0+ / Windows 10 1809+・Windows Server 2019+ / Ubuntu 20.04+ / Debian 10+ / Alpine Linux 3.19+
ハードウェア要件4GB以上のRAM、x64またはARM64プロセッサ
ネットワーク要件インターネット接続が必須
シェル要件Bash、Zsh、PowerShell、CMD

Cloud9のEC2環境作成では、プラットフォームとしてAmazon Linux 2023・Amazon Linux 2・Ubuntu 22.04 LTSの3つから選べます。AWS自体はAmazon Linux 2023を推奨していますが、Claude CodeのOS要件一覧に載っているのはUbuntuです。Amazon Linuxは一覧に含まれておらず、動作する場面は多くても動作確認済みの組み合わせとしては書かれていません。要件一覧との整合を優先するなら、Cloud9のプラットフォームはUbuntu 22.04 LTSを選ぶのが妥当です。

インスタンスタイプは、Amazon EC2汎用インスタンスの仕様に基づくと次のように分かれます。

インスタンスタイプvCPUメモリClaude Codeとの適合
t2.micro / t3.microvCPU1〜2メモリ1GiBClaude Codeとの適合要件未達(チュートリアルの既定値)
t2.medium / t3.mediumvCPU2メモリ4GiBClaude Codeとの適合要件はぎりぎり満たすが余裕は薄い
t3.large / m5.largevCPU2メモリ8GiBClaude Codeとの適合実運用でも余裕がある構成

Claude CodeはOSやエディタ、依存パッケージと同居して動きます。4GBちょうどのインスタンスでは要件は満たしても実際には窮屈です。継続的に使うなら、t3.largeやm5.largeのような8GiB以上のインスタンスタイプが現実的な下限になります。

小さいインスタンスは無料利用枠とも重なります。2025年7月15日より前に作成したAWSアカウントで無料利用枠の対象になるインスタンスタイプはt2.microとt3.microだけで、いずれもメモリは1GiBです。2025年7月15日以降に作成したアカウントでは対象がt3.micro・t3.small・t4g.micro・t4g.small・c7i-flex.large・m7i-flex.largeに広がりますが、それでも4GiB以上のタイプは含まれません。Claude Codeを動かすためにt3.medium以上を選ぶと、料金は無料利用枠の対象外になります。

4GB以上のインスタンスでCloud9環境を作成する手順

コンソールから作成する場合は、Create environmentのInstance type欄でインスタンスタイプの一覧を開き、4GB以上のRAMを持つタイプ(t3.medium以上)を選びます。既定で表示される選択肢のままでは要件を満たしません。プラットフォームはUbuntu 22.04 LTSを選び、TimeoutとNetwork settingsは用途に応じて設定します。

CLIから作成する場合は、チュートリアルのコマンド例にある--instance-typeを要件に合う値に差し替えます(ドキュメントの例に沿った形)。

aws cloud9 create-environment-ec2 \
  --name claude-code-env \
  --instance-type t3.medium \
  --image-id resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64 \
  --region ap-northeast-1 \
  --connection-type CONNECT_SSM \
  --subnet-id subnet-xxxxxxxx

--image-idをUbuntu向けのSSMパスに変更すれば、コンソールで選ぶプラットフォームと同じ組み合わせになります。既定のEBSボリュームは10GiBで作成されるので、Claude Codeとプロジェクトの依存関係を入れると手狭になりやすい点も覚えておいてください。

Cloud9のインスタンスにClaude Codeをインストールして確認する

インスタンスを作り直したら、あとの手順はどのLinux環境でも同じです。Cloud9のターミナルを開き、ネイティブインストーラーを実行します。

curl -fsSL https://claude.ai/install.sh | bash

インストーラーが完了したら、新しいターミナルを開いてclaude --versionを実行し、バージョン番号が表示されることを確認します。claudeコマンドが見つからないと表示される場合は、インストール先のディレクトリがPATHに含まれていないことが原因です。

Claude Codeはコードベース内の検索にripgrepを使います。通常はインストーラーに同梱されるため、Cloud9側で別途インストールする必要はありません。検索コマンドが動かないときだけ、ripgrepの有無を個別に確認します。

既存のCloud9環境をメモリ不足から復旧する方法

すでに小さいインスタンスでCloud9環境を作ってしまった場合、選べる対処は2つあります。

1つ目は、インスタンスタイプそのものを変更する方法です。EC2コンソールでインスタンスを停止し、Actions→Instance Settings→Change Instance Typeから新しいタイプを選びます。同じインスタンスタイプへの変更はできない仕様なので、必ずRAMの大きいタイプに切り替えることになります。

2つ目は、インスタンスタイプを変えずにスワップファイルで補う方法です。Cloud9のIDEが「メモリ不足」「CPU負荷が高い」と表示したときの対処コマンドは、ドキュメントで次のように示されています。

sudo fallocate --length 512MB /var/swapfile && sudo chmod 600 /var/swapfile && \
  sudo mkswap /var/swapfile && \
  echo '/var/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab > /dev/null
sudo swapon /var/swapfile

スワップは物理RAMの不足を一時的に補うだけで、ディスクI/Oを介するぶん体感速度は落ちます。恒常的にClaude Codeを使うなら、スワップでしのぐより先にインスタンス変更を優先したほうが安定します。

AWS Cloud9でよくあるつまずき

  • 新規アカウントは新規顧客にあたり、環境を作れない: Cloud9を使ったことがないAWSアカウントは2024年7月25日のアクセス終了以降の新規顧客に該当し、環境を新規作成できません。既存のCloud9環境を持つアカウントでの利用に限られます
  • プライベートサブネットに作るとネットワーク要件を満たせないことがある: Cloud9のEC2環境をプライベートサブネットに置くと、NATゲートウェイを用意しない限りインスタンスがインターネットに出られません。Claude Codeは常時ネットワーク接続を前提にしたツールなので、これがそのままAPI呼び出しの失敗につながります
  • 一時的なマネージド認証情報が使えない制約がある: プライベートサブネット構成のCloud9では、AWSの一時的なマネージド認証情報をIAMエンティティへの委任に使えません。Bedrock経由でClaude Codeの認証を通す構成にしている場合は、この制約が認証エラーの原因になっていないか切り分けが必要です。Bedrock認証情報を固定したい場合はAWS_BEARER_TOKEN_BEDROCKとはで扱う環境変数を使う方法もあります。切り分けの手順は「AWS default-chain credential resolve timed out」の対処とAWS authentication failedの原因と対処で扱っています
  • EBSボリュームは既定で10GiBしかない: node_modulesの展開やビルド成果物が増えると、RAMより先にディスクが埋まることがあります

まとめ

AWS Cloud9でClaude Codeを動かす前提は、まず「新規にCloud9を始めることはできない」という制約を認めることです。すでにCloud9環境を持つ人だけが対象になります。

そのうえで、既定のインスタンスタイプやコンソールの初期選択は4GB要件を満たしません。t3.medium以上、できればt3.largeやm5.largeのような8GiB級のインスタンスを選び直す必要があります。プラットフォームはUbuntu 22.04 LTSを選べば、Claude Codeのシステム要件にあるOSの一覧と一致します。

すでに小さいインスタンスで環境を作ってしまった場合は、インスタンスタイプの変更かスワップファイルの追加で対応できます。恒久的に使うならインスタンス変更を優先し、スワップは応急処置と考えたほうが安全です。

この記事を共有:XはてブLinkedIn