目的
既存のEC2サーバ上で稼働しているWebシステムを、ローカル等で開発環境を構築せず、
サーバ上で開発作業ができるようにClould9を利用し、既存EC2と連携する手順を記載する。
前段として
Could9とは
ブラウザのみでコードを記述、実行、デバッグできるクラウドベースの統合開発環境 (IDE) 。
https://aws.amazon.com/jp/cloud9/
既存環境にNode.jsが必要
既存EC2を使ってCould9を動作させるためには、既存環境上にNode.jsがインストールされている必要がある。
手順
1.既存EC2セキュリティグループの設定
・Could9から既存EC2環境への接続を許可するため、既存EC2環境のセキュリティグループの設定を行う。
・インバウンドルールの修正を行い、東京リージョンのCould9のIP(下記の2つ)からのssh接続を許可する。18.179.48.96/27 (Cloud9 Tokyo)
18.179.48.128/27 (Cloud9 Tokyo)
2.既存EC2にNode.jsをインストールする
まず、既存環境にNode.jsがインストール済か確認する。
※下記コマンドは既存環境上で実行するNode.jsがインストールされいてるか確認node --version
※以降の手順は、Node.jsがインストール済みであればスキップする。
Node.jsのインストールの為、nvmを利用する。curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
nvmを有効にする. ~/.nvm/nvm.sh
nvmを利用してNode.jsをインストールするnvm install 16
インストール完了できたかを確認node --version
3.Cloud9環境作成
3.1.Could9へ移動
・AWS サービスから「Cloud9」を入力して、選択する。
・ダッシュボード画面の左メニューの「自分の環境」をクリックし、環境一覧画面の右上にある「環境を作成」を押下する。3.2.環境作成
3.2.1.環境設定(名前、環境タイプ)
・Clould9の環境名に適当な名前を入力する
・「既存のコンピューティング」を選択する3.2.2.既存EC2環境にパブリックキーを設定する
ここではClould9から既存EC2環境へセキュアに通信するためのパブリックキーを、既存EC2環境に設定する。
・Could9の環境作成画面中部にある「キーをクリップボートにコピー」のボタンを押下して、コピーする。
・一度、現在の画面を離れて、既存EC2へ接続する(Teratermなどのクライアントツールで接続する)。
・既存環境の認証キーファイルに、コピーした内容を追記する。コマンドでファイルを開くvi .ssh/authorized_keys
3.2.3.環境設定(名前、環境タイプの続き)
Could9の環境作成画面へ戻り、設定を続ける。
・ユーザは「ec2-user」を設定
・ホストは既存EC2インスタンスのIPを設定
・ポートは「22」を設定
・「その他の詳細 - オプション」も設定する
・環境パスは「/」を設定する
※Clould9でEC2へ入った後のに操作できるディレクトリとしてルートを設定・Node.js バイナリへのパスは既存EC2環境にインストールしたNode.js のバイナリパスを設定する。
既存環境でコマンドで実行し、取得したパスをそのまま設定するwhich node
※設定例
3.2.4.作成する
・画面右下の作成ボタンを押下する。
4.Cloud9環境実行
・環境一覧の作成された環境の「Could9 IDE」の「開く」を押下する。
・Cloud9のセットアップが始まるので、Nextを押下する。
・必要なコンポーネントを選択し、Nextを押下する。
※今回は「c9 ide collab」は対象外とする。
※インストール中Python関連のエラーが発生した場合、EC2環境上でPythonのインストールの為pipをインストールしておく
sudo yum install python-pip
・インストールが終了したら、セットアップ完了。