AWS Cloud9 に関するよくある質問

全般

AWS Cloud9 は、ブラウザのみでコードを記述、実行、デバッグできるクラウドベースの統合開発環境 (IDE) です。このサービスは、コード補完、ヒント、およびステップスルーデバッグなどの IDE の豊富なコード編集機能と、コードを実行および保存するための Linux サーバーへのフルアクセスを組み合わせたものです。 詳細については、AWS Cloud9 ユーザーガイドをご覧ください。

コードを書く人は誰でも AWS Cloud9 を使うことができます。Node.js (JavaScript)、Python、PHP、Ruby、Go、および C++ を使用してアプリケーションを開発するユーザーは、Cloud9 を使用でき、プリインストールされたランタイム、パッケージマネージャ、デバッグツールを使用して、完全に構成された開発環境にブラウザから即座にアクセスできます。Cloud9 では、単一の開発マシンに縛られることなく、インターネットに接続されたあらゆるコンピュータから開発環境にアクセスできます。AWS デベロッパーと新しい AWS のサービスを評価するデベロッパーは、AWS Cloud9 を使用して、事前設定済みの AWS Command Line Interface (AWS CLI) を介して AWS リソースに簡単にアクセスでき、AWS のサービスに対してコマンドをいつでも実行できます。Node.js または Python を使用して AWS Lambda でサーバーレスアプリケーションを開発する場合は、Cloud9 の組み込みツールを使用して、IDE 内から Lambda 関数を作成、編集、実行、デバッグ、およびデプロイできます。

AWS Cloud9 は、Node.js (JavaScript)、Python、PHP、Ruby、Go、C++ など、40 以上のプログラミング言語をサポートしています。これには、多くの一般的なプログラミング言語のシンタックスハイライト、アウトラインビュー、コードヒント、コード補完、アプリケーション実行機能、ステップスルーデバッグなどの機能が含まれています。Cloud9 でサポートされている言語機能の詳細については、ユーザーガイドの言語サポートトピックをご覧ください。

AWS Cloud9 は、Google Chrome、Safari、Firefox、Microsoft Edge の最新バージョンで完全にサポートされています。

AWS Cloud9 には追加料金はかかりません。AWS Cloud9 開発環境に Amazon EC2 インスタンスを使用する場合は、コードの実行と保存に使用されたコンピューティングとストレージのリソースの分 (例: EC2 インスタンス、EBS ボリューム) のみのお支払いとなります。また、Cloud9 開発環境を、SSH 経由で追加料金なしで既存の Linux サーバー (オンプレミスサーバーなど) に接続できます。詳細については、AWS Cloud9 の料金ページを参照してください。

AWS は、AWS のアプリケーションの開発を容易にするための幅広い IDE サポートを提供しています。AWS でサポートされる IDE ツールキットの詳細については、AWS ツールページの IDE ツールキットのセクションをご覧ください。

ユーザーガイドのトラブルシューティングのトピックで、発生する可能性のあるエラーとその解決策の一部を確認できます。

AWS Cloud9 の使用

AWS マネジメントコンソールにサインインして AWS Cloud9 を選択できます。コンソールでは、Cloud9 に接続する Linux サーバーを選択するオプションが順を追って示されます。簡単な手順を使用して、新しい Amazon EC2 インスタンス (AWS Cloud9 EC2 環境) を起動するか、既存の Linux サーバー (AWS Cloud9 SSH 環境) を接続できます。Cloud9 環境を作成したら、IDE にアクセスして、完全に構成された開発環境でコードを書くことができます。 詳細については、AWS Cloud9 のセットアップに関するドキュメントを参照して、基本的なチュートリアルを完了してください。

AWS Cloud9 開発環境では、プロジェクトコードファイルが格納され、アプリケーションの開発に使用されるツールが実行されます。各環境には、固有の IDE 設定が格納されています。これにより、特定のプロジェクトに必要な、ツール、ランタイム、ファイル、および IDE 設定でカスタマイズされた多くのさまざまな開発環境を簡単に作成して切り替えられます。

使用できる AWS Cloud9 環境には 2 種類があります。

  • AWS Cloud9 EC2 環境 – Cloud9 が接続する新しい Amazon EC2 インスタンスを起動できます。既定では、これらのインスタンスは IDE を終了して 30 分後に停止し、IDE を開いたときに自動的に起動します。
  • AWS Cloud9 SSH 環境 – 既存の Linux サーバーを Cloud9 に接続できます。Cloud9 SSH 環境で使用する Linux サーバーには、特定の依存関係が必要です。詳細については、こちらのドキュメントをご覧ください。

はい。SSH 環境を使用して、既存の Linux ベースの EC2 または Lightsail インスタンスを AWS Cloud9 に接続することができます。

AWS Cloud9 IDE には、オートコンプリート、コードフォールディング、ヒント、シンタックスハイライト、行の操作などの機能を備えた高度なコードエディタが搭載されています。コードエディタを使用すると、シンタックスハイライトや UI を制御する 30 以上のカラースキームから選択できます。また、スタイルシートを編集して Cloud9 UI を完全にカスタマイズすることもできます。

AWS Cloud9 EC2 環境には、Git や Docker などのよく使用される開発ツールがあらかじめインストールされています。また、Node.js や Python などの多くの一般的なプログラミング言語の言語ランタイムとパッケージマネージャも含まれています。Cloud9 EC2 環境にプリインストールされているツールとパッケージの完全なリストを表示するには、こちらのドキュメントをご覧ください。

AWS Cloud9 IDE では、ツールバーの実行ボタンと、10 種類以上の言語の組み込み型の実行機能によって、最新のコード変更を使用してアプリケーションを自動的に起動します。ソフトウェアの実行方法を完全に制御するには、既存の実行機能をカスタマイズしたり、独自の実行機能を作成したり、端末からコードを実行することもできます。

AWS Cloud9 IDE には、対話形式で CLI コマンドを実行できる端末ウィンドウが組み込まれています。さらにユーザーは、インスタンスに対する完全な管理者特権 (sudo 権限) を持ち、アプリケーションの開発やホスティングに必要な追加ツールをインストールすることができます。

IDE 内で端末ウィンドウを開き、ローカルマシンで使用するのと同じコマンドラインツールを使用してソース管理システムにアクセスできます。AWS Cloud9 EC2 環境に Git がプリインストールされているため、ソースコードに簡単にアクセスできます。

詳細については、リージョン別製品およびサービスを参照してください。

コードファイル、パッケージ、依存関係など、AWS Cloud9 環境に格納するあらゆるデータは、常にリソースに格納されます。EC2 環境を使用する場合、データは AWS アカウントに存在する関連する Amazon Elastic Block Store (EBS) ボリュームに保存されます。SSH 環境を使用する場合、データは Linux サーバーのローカルストレージに保存されます。

AWS Cloud9 関連リソース

Amazon EC2 環境を作成すると、AWS Cloud9 は AWS アカウントに必要なコンピュートリソースとストレージリソースを作成します。これらのリソースには Amazon EC2 インスタンス、8-GB の Amazon Elastic Block Store (EBS) ボリューム、Amazon EC2 セキュリティグループ、AWS CloudFormation スタックがあります。これらのリソースには個々の AWS のサービスコンソールを通じてアクセスできます。環境を削除すると、Cloud9 は自動的にこれらのリソースを削除します。

AWS Cloud9 EC2 環境リソースの作成と削除に加えて、Cloud9 はコストを削減するために EC2 インスタンスを自動的に開始および停止できます。EC2 インスタンスにソフトウェアパッチをインストールしたり、EBS ボリュームのバックアップを実行したりするなど、これらのリソースに関する他のすべての管理タスクはユーザー側が担当します。

AWS Cloud9 では、Cloud9 経由で作成された Amazon EC2 インスタンスの既定の自動ハイバネーション設定が 30 分に設定されています。この設定を使用すると、EC2 インスタンスは IDE を終了して 30 分後に自動的に停止し、IDE を再度開いたときにのみ再起動します。その結果、アクティブに作業しているときのみ EC2 インスタンスの料金が発生します。インスタンスの再起動が必要な場合は、IDE 内のアクティブな端末セッションがすべて失われ、IDE を開くまでに待ち時間が生じることがあります。ユースケースによっては、自動ハイバネーション設定を構成したり、EC2 インスタンスを常にオンに保つこともできます。

はい。最初に AWS Cloud9 環境で選択した Amazon EC2 インスタンスのタイプを変更できます。これを行うには、EC2 コンソールのインスタンスに移動し、インスタンスを見つけて、Amazon EC2 のドキュメントの指示に従います。

環境の共有

IDE の右上にある [Share] (共有) ボタンをクリックすると、AWS Cloud9 環境を共有できます。AWS Identity and Access Management (IAM) のユーザー名と、共同作業を行う相手の希望するアクセスレベルの入力を求められます。これらの詳細を入力すると、IDE 機能のリアルタイムコラボレーションのユーザーと、コマンドラインセッションのユーザーの両方が環境を利用できます。

AWS Cloud9 環境は現在、同じ AWS アカウント内の IAM ユーザーとしか共有できません。IAM ユーザーのアクセス権を持たない新しいユーザーを招待する場合は、[Share]ダイアログボックスでリンクをクリックして新しい IAM ユーザーを作成できます。

AWS のサービスと AWS Cloud9 の使用

AWS Cloud9 EC2 環境には AWS CLI がプリインストールされており、ログインした AWS ユーザーの権限で自動的に認証されます。これにより、追加設定なしで、Cloud9 に組み込まれている端末ウィンドウから AWS のサービスに対して対話型 CLI コマンドを実行できます。

AWS Lambda の組み込みツールには、IDE の AWS リソースパネルからアクセスできます。これらのツールを使用して、Node.js と Python の既存の Lambda 関数をインポートしたり、新しい Lambda 関数を作成したりできます。IDE から直接これらの関数を簡単に実行、プレビュー、デバッグ、およびデプロイできます。AWS Cloud9 は、AWS Serverless Application Model (AWS SAM) フレームワークもサポートしています。これにより、アプリケーション内の複数の Lambda 関数やサーバーレスリソースを簡単に管理できます。AWS CodeStar を使用してプロジェクトをプロビジョニングした場合、アプリケーションにコミットされた変更は、git push で Lambda に直接構築およびデプロイされます。

はい。AWS Cloud9 は、IDE で関数をローカルに実行するために、Node.js と Python の AWS Lambda 実行環境をシミュレートできます。これにより、アプリケーションの変更を Lambda にアップロードせずに、ステップスルーデバッグを使用してサーバーレスアプリケーションをテストできます。テストが完了したら、アプリケーションの変更を IDE から Lambda に直接デプロイすることもできます。

AWS Cloud9 環境を AWS CodeStar から直接起動し、Cloud9 IDE で CodeStar プロジェクトコードの編集とコミットをすぐに開始できます。Cloud9 からプロジェクトソースリポジトリにコミットしたコード変更は、CodeStar によってプロビジョニングされたツールを使用して自動的にビルドされ、デプロイされます。この統合の使用方法の詳細については、AWS CodeStar のドキュメントをご覧ください。