AWS Cloud9
ユーザーガイド

AWS Cloud9 Integrated Development Environment (IDE) で Amazon Lightsail インスタンスを操作する

AWS Cloud9 IDE を使用して、一般的なアプリケーションやフレームワーク向けに事前設定された Amazon Lightsail インスタンスでコードを操作できます。これらのアプリケーションやフレームワークには、WordPress、LAMP (Linux、Apache、MySQL、PHP)、Node.js、Nginx、Drupal、Joomla、およびAmazon Linux、Ubuntu、Debian、FreeBSD、openSUSE などの Linux ディストリビューションが含まれます。

Lightsail は、シンプルな仮想プライベートサーバー (VPS) ソリューションを必要とする開発者、スモールビジネス、学生、その他のユーザーが AWS の利用を開始するための最も簡単な方法です。Lightsail には、開発者がウェブサイトやウェブアプリケーションをクラウドにデプロイし、管理するのに必要なコンピューティング性能、ストレージ容量、ネットワーキング機能が用意されています。Lightsail には、プロジェクトをすばやく開始するためのすべてが揃っています。仮想マシン、SSD ベースのストレージ、データ転送、DNS 管理、静的 IP が 1 か月単位の予測可能な低価格で提供されます。詳細については、「Amazon Lightsail の機能」を参照してください。

このトピックでは、AWS Cloud9 と互換性のある Linux ベースの Lightsail インスタンスを作成し、設定します。次に、AWS Cloud9 SSH 開発環境 を作成して Lightsail インスタンスに接続します。

注記

この手順を完了すると、AWS アカウントに料金が発生する可能性があります。Lightsail などのサービスに対して発生する可能性がある料金も含まれます。詳細については、「Amazon Lightsail 料金表」を参照してください。

AWS Cloud9 IDE、ソース管理、ビルド、デプロイメント、仮想サーバー、サーバーレスリソースなどのツールチェーンを含む、より高度なソリューションを作成して設定するには、このトピックの残りをスキップし、代わりに「AWS CodeStar プロジェクトを操作する」を参照してください。

AWS Cloud9 IDE を使用して、サンプルコードを含まない、Amazon Linux または Ubuntu Server を実行している Amazon EC2 インスタンスを操作するには、このトピックの残りをスキップし、代わりに「開始方法: 基本的なチュートリアル」を参照してください。

ステップ 1: Linux ベースの Lightsail インスタンスを作成する

このステップでは、Lightsail コンソールを使用して、Linux ベースのディストリビューションでアプリを実行する Amazon EC2 インスタンスを作成します。このインスタンスには自動的に次のものが含まれます。

  • パブリック IP アドレスとプライベート IP アドレス(静的パブリック IP を後で作成することができます)。

  • ポート 22 を介した SSH、ポート 80 を介した HTTP、ポート 443 を介した HTTPS を使用して、インスタンスにアクセスします(この設定は変更できます)。

  • ブロックストレージディスク(後で追加のディスクをアタッチできます)。

  • 組み込みのシステムレポート

Lightsail コンソールを使用すると、インスタンスを後でバックアップ、再起動、停止、または削除することができます。

  1. Lightsail コンソール (https://lightsail.aws.amazon.com) を開いてサインインします。

    AWS アカウントの IAM 管理者ユーザーの認証情報を使用してサインインすることをお勧めします。IAM 管理者ユーザーとしてサインインできない場合は、AWS アカウントの管理者に確認してください。

  2. プロンプトが表示されたら、コンソールで使用する言語を選択して、[保存] を選択します。

  3. プロンプトが表示されたら、[では、始めましょう] を選択します。

  4. [インスタンス] タブが既に選択されているホームページで、[インスタンスの作成] を選択します。

    
                  Lightsail コンソールでインスタンスの作成ボタンを選択する
  5. [インスタンスロケーション] で、ロケーションが、インスタンスの作成先であり、AWS Cloud9 が使用可能な AWS リージョンと一致することを確認します。詳細については、『アマゾン ウェブ サービス全般のリファレンス』の「AWS Cloud9」を参照してください。AWS リージョン、アベイラビリティーゾーン、または両方を変更するには、[リージョンとゾーンの変更] を選択して、画面の指示に従います。

  6. [インスタンスイメージの選択] において、[プラットフォームの選択] で [Linux/Unix] が選択済みであり、 [設計図の選択] で [アプリ + OS] が選択済みの状態で、設計図を選択します。

    
                  Lightsail コンソールでインスタンスプラットフォームと設計図を選択する

    注記

    アプリを持たないインスタンスを作成する場合は、[アプリ + OS] の代わりに [OS のみ] を選択して、ディストリビューションを選択します。

    使用可能なオプションについては、Lightsail ウェブサイトの「Amazon Lightsail インスタンスイメージの選択」を参照してください。

  7. [インスタンスプランの選択] で、プランを選択するか、選択済みのデフォルトプランのままにします。

  8. [インスタンスの名前の指定] に、インスタンスの名前を入力するか、推奨のデフォルト名のままにします。

  9. インスタンス数として、作成するインスタンスの数を入力するか、デフォルトの 1 インスタンス ([x 1]) のままにします。

  10. [作成] を選択します。

ステップ 2: AWS Cloud9 で使用するインスタンスを設定する

このステップでは、実行中のインスタンスに接続してから、AWS Cloud9 が後でそれを使用できるように設定します。

注記

以下の手順では、前のステップで [アプリ + OS] を選択したものとします。代わりに [OS のみ] と、 [Ubuntu] 以外のディストリビューションを選択した場合は、以下の手順を適切に読み替える必要があります。

  1. 前のステップで開いたままの Lightsail コンソールの [インスタンス] タブで、インスタンスのカードにあるインスタンス名を選択します。

    
                  Lightsail コンソールでインスタンスの詳細の表示を選択する
  2. [接続] タブの [独自の SSH クライアントを使用して接続] で、[パブリック IP] と [ユーザー名] の値を書き留めます。後に必要になります。

    
                  Lightsail コンソールに表示されるインスタンスのパブリックアドレスとユーザー名
  3. [SSH を使用して接続] を選択します。

  4. インスタンスに最新のシステム更新があることを確認してください。これを行うには、表示されたターミナルセッションで、コマンド sudo apt update を実行します。

  5. Python がインストール済みであるかどうかをチェックし、インストール済みである場合は、バージョンが 2.7 であることを確認します。バージョンを確認するには、コマンド python --version を実行し、表示されるバージョン番号を書き留めます。バージョン番号が表示されないか、バージョンが 2.7 でない場合は、コマンド sudo apt install -y python-minimal を実行してインスタンスに Python 2.7 をインストールします。

  6. Node.js がインストールされているかどうかを確認し、存在する場合はバージョンが 0.6.16 以降であることを確認します。バージョンを確認するには、コマンド node --version を実行し、表示されるバージョン番号を書き留めます。バージョン番号が表示されない場合、またはバージョンが 0.6.16 以降でない場合は、Node Version Manager (nvm) を使用してインスタンスに Node.js をインストールすることをお勧めします。

    これを行うには、以下のコマンドを一度に 1 つずつ以下の順序で実行します。インスタンスを更新するには、インスタンスに Node Version Manager (nvm) をインストールし、インスタンスで nvm をアクティブにしてから、最新バージョンの Node.js をインスタンスにインストールします。

    sudo apt update curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash . ~/.bashrc nvm install node
  7. コマンド which node を実行し、表示される値を書き留めます。後で必要になります。

    注記

    コマンド which node の出力が /usr/sbin/node である場合、AWS Cloud9 は、このパスで Node.js を見つけることができません。代わりに、この手順の前のステップで説明したように、nvm を使用して Node.js をインストールします。コマンド which node をもう一度実行し、表示される新しい値を書き留めます。

  8. インスタンスに AWS Cloud9 インストーラをダウンロードして実行します。

ステップ 3: AWS Cloud9 SSH 開発環境 を作成し接続する

このステップでは、AWS Cloud9 コンソールとインスタンスのターミナルを使用して SSH 環境 を作成し、環境 を実行中のインスタンスに接続します。

  1. 前のステップで開いたままのターミナルセッションで、次のようにして AWS Cloud9 コンソールにサインインします。

    • AWS アカウントを使用する唯一のユーザーである、または単一の AWS アカウント内の IAM ユーザーである場合は、https://console.aws.amazon.com/cloud9/ を参照してください。

    • 組織で AWS Single Sign-On (SSO) を使用している場合は、サインインの手順について AWS アカウント管理者にお問い合わせください。

    • AWS Educate Starter Account を使用している場合は、個々の学生のサインアップの「ステップ 2: AWS Cloud 9 コンソールにサインインする」を参照してください。

    • 教室内の学生である場合は、サインインの手順についてインストラクターにお問い合わせください。

    注記

    この手順では、2 つの異なる AWS のサービスを同時に使用します。IAM 管理者ユーザーとして Lightsail コンソールにサインインしたが、別のエンティティに新しい SSH 環境 を所有させたい場合は、別のウェブブラウザを開き、そのエンティティとして AWS Cloud9 コンソールにサインインすることをお勧めします。

  2. AWS Cloud9 コンソールで、インスタンスを作成した AWS リージョンと一致する AWS リージョンを選択します。

    
                  AWS Cloud9 コンソールの AWS リージョンセレクター
  3. ウェルカムページが表示されたら、[New AWS Cloud9 environment (新しい AWS Cloud9 環境)] で、[Create environment (環境の作成)] を選択します。それ以外の場合は、[Create environment (環境の作成)] を選択します。

    
                  ウェルカムページが表示されら、[Next step (次のステップ)] ボタンを選択する

    または:

    
                  ウェルカムページが表示されない場合は、[Create environment (環境の作成)] ボタンを選択する
  4. [Name environment (環境に名前を付ける)] ページで、[Name (名前)] に 環境 の名前を入力します。

  5. 環境 に説明を追加するには、[Description (説明)] ボックスに入力します。

  6. [Next step] を選択します。

  7. [Configure settings (設定の構成)] ページの [Environment type (環境タイプ)] で、[Connect and run in remote server (SSH) (リモートサーバーに接続して実行する (SSH))] を選択します。

  8. [User (ユーザー)] に [User name (ユーザー名)] の値を入力します。

  9. [Host (ホスト)] に [Public IP(パブリック IP)] の値を入力します。

  10. [Port (ポート)] は、デフォルト値の [22] のままにしておきます。

  11. [Advanced settings (詳細設定)] を展開します。

  12. [Environment path (環境パス)] に、ログイン後に AWS Cloud9 が起動するパスを入力します。これは ~/ (ユーザーのホームディレクトリのルート) です。

  13. [Node.js binary path (Node.js バイナリパス)] に、前に書き留めたコマンド which node の値を入力します。

  14. [SSH jump host (SSH ジャンプホスト)] は空白のままにします。

  15. この 環境 用に AWS Cloud9 が作成したパブリック SSH キーをシステムのクリップボードに保存します。これを行うには、[Copy key to clipboard (キーをクリップボードにコピーする)] を選択します。

    注記

    コピーしたパブリック SSH キーの値を確認するには、[View public SSH key (パブリック SSH キーの表示)] を展開します。

  16. インスタンスにコピーしたパブリック SSH キーの値を保存します。これを行うには、すでにインスタンスにインストールされている一般的なテキストエディタ vi を使用します。

    1. インスタンスのターミナルセッションで、コマンド vi ~/.ssh/authorized_keys を実行します。

    2. 表示される vi エディタで、ファイルの最後に移動し、挿入モードに切り替えます。これを行うには、G キーに続けて A キーを押します (-- INSERT -- が vi エディタの下部に表示されます)。

    3. Enter を 2 回押して、ファイルの末尾に 2 つの改行を追加します。

    4. コピーしたばかりのパブリック SSH キー値を含むシステムクリップボードの内容をターミナルセッションのクリップボードに貼り付けます。これを行うには、ターミナルセッションウィンドウの一番下にあるクリップボードボタンをクリックし、システムクリップボードの内容をボックスに貼り付けます。

      
                        Lightsail ターミナルセッションのクリップボードを開く
    5. ターミナルセッションのクリップボードの内容を vi エディタに貼り付けます。これを行うには、vi エディター内の挿入ポイントで Ctrl + Shift + V を押します。

    6. ファイルを保存します。これを行うには、Esc キーを押してコマンドモードに移動します (-- INSERT -- が vi エディタの下部から消えます)。 :wq (ファイルを write て、vi エディタを quit する) を入力して、Enter を押します。

  17. AWS Cloud9 コンソールに戻り、[Next step (次のステップ)] を選択します。

  18. [Review choices (選択内容を確認する)] ページで、[Create environment (環境の作成)] を選択します。AWS Cloud9 が 環境 を作成して 環境 の AWS Cloud9 IDE が表示されるのを待ちます。これには数分間かかる場合があります。

AWS Cloud9 が 環境 を作成すると、環境 の AWS Cloud9 IDE が表示されます。

少なくとも 5 分後に AWS Cloud9 に IDE が表示されない場合は、ウェブブラウザ、AWS アクセス権限、インスタンス、または関連する Virtual Private Cloud (VPC) に問題がある可能性があります。環境の修正については、トラブルシューティングの「環境を開くことができない」を参照してください。

ステップ 4: AWS Cloud9 IDE を使用してインスタンスのコードを変更する

新しい 環境 の IDE が表示されたので、Lightsail ターミナルセッションの代わりに IDE のターミナルセッションを使用できます。IDE は、色テーマ、ショートカットキーバインディング、プログラミング言語固有の構文の色付けとコードの書式設定など、さまざまなプログラミング言語とランタイムデバッガをサポートする豊富なコード編集エクスペリエンスを提供します。

IDE の使用方法については、「AWS Cloud9 IDE の演習」を参照してください。

インスタンス上のコードを変更する方法については、以下のリソースをお勧めします。