クラウドIDEのCloud9は2016年にAmazonに買収され、2017年の12月にAWSに統合されました。
AWSに統合されたことで使い方が少し変わり、わかりにくくなったと感じる人もいるのではないでしょうか。
この記事ではビギナー向けにAWS Cloud9で環境構築する方法(新しいEC2インスタンス作成編)を解説していきます。
手順通りに進めていけば難しいことはありませんので難なく進めれると思います。
SSH接続編は「AWS Cloud9の導入方法〜SSH接続編〜」をご覧ください。
※AWSを利用する場合はセキュリティの観点からIAMユーザーを作成して作業を行うことが好ましいですが、この記事ではルートアカウントで作業しています。
IAMユーザーの作成、セキュリティ対策については下記記事をご覧ください。
AWSコンソールから環境を作成
まずAWSのアカウントを作成してコンソールにログインします。
ログインしたら「サービス」から「Cloud9」をクリックします。

Cloud9は東京リージョンをサポートしていないので、他のリージョンで利用する形となります。
どこでも問題ありませんが、ここでは「アジアパシフィック(シンガポール)」を選択します。

次に「Create environment」をクリックして、環境作成画面に移動します。

Nameに任意の環境名を入力して「Next step」をクリックします。

設定画面に移動したら「Environment type」で「Create a new instance for environment (EC2)」にチェックを入れます。

「Instance type」は制作環境に合わせて適当なものを選択してください。
今回は「t2.micro (1 GiB RAM + 1 vCPU)」にチェックを入れました。

「Cost-saving setting」はデフォルトの「After 30 minutes (Default)」で良いでしょう。

これはブラウザを閉じてから何分後にインスタンスを自動停止するかの設定です。
Cloud9の利用自体は無料ですが、インスタンスを起動している間料金がかかるのでコスト節約のために短めに設定しておくと良いでしょう。
「Network settings (advanced)」は特に変更する必要はありませんので「Next step」をクリック。

確認画面に移るので問題なければ「Create environment」をクリックして、作成します。

環境構築まで1、2分かかります。
完了するとCloud9 IDEの画面が現れます。

次は、パブリックIPの固定化を行いましょう。
パブリックIPの固定化
パブリックIPを固定しておかないとEC2インスタンスが起動するたびにパブリックIPが変わってしまいますので、こちらももれなく行いましょう。
「サービス」から「EC2」をクリック。

左側のメニューから「Elastic IP」をクリック。

画面上の「新しいアドレスの割り当て」をクリック。

画面右の「割り当て」をクリック。

割り当てが成功すると「新しいアドレスのリクエストが成功しました」という画面に変わるので画面右の「閉じる」をクリック。

これでElastic IP(固定パブリックIP)を取得できたので、先程Cloud9で作成したインスタンスにこのIPアドレスを関連付けます。
今作成したElastic IPを選択した状態で「アクション」→「アドレスの関連付け」をクリック。

先程Cloud9で作成したインスタンスを選択して「関連付け」をクリック。

成功すると「新しいアドレスの関連付けが成功しました」という画面に変わるので右下の「閉じる」をクリック。

これでパブリックIPの固定化は完了です。
次はセキュリティグループでポートの開放を行います。
セキュリティグループでポートの開放
通常のHTTPアクセスはポート80番を使いますが、Cloud9の場合8080番が割り当てられているのでこのポート番号を開放します。
「セキュリティグループ」→「cloud9のセキュリティグループ」→「インバウンド」→「編集」の順にクリックします。

「ルールの追加」をクリックし、ポート範囲に「8080」を入力、ソースに「0.0.0.0/0」と入力し保存をクリック。

これで8080番のポートが開放されました。
次はCloud9上でPHPを書いて実行・確認する所までやっていきましょう。
PHPの実行
「サービス」から「Cloud9」を選択すると、「Your environments」に先程作ったCloud9の開発環境が出てきますので「Open IDE」をクリックしてCloud9 IDEを開きましょう。
IDEが開いたら確認用のPHPファイルを作成します。
ルートディレクトリを選択した状態で、「File」の「New From Template」から「PHP File」を選択します。
すると新しいファイルが作られますのでphpinfo();と入力し、⌘+SまたはCtrl+Sで保存します。
ファイル名はindex.phpとしましょう。
保存ができたら先程書いたPHPを実行してみます。
「Run」をクリックし、「Run With」から「PHP(build-in web server)」をクリックします。
そして「パブリックIPの固定化」で紐づけたIPアドレスに:8080をつけたURLにアクセスします。
画面にPHPの情報が出ていれば成功です。
これでPHPを実行・確認するところまでできました。
次はWordPressをインストールしていきたいと思います。
WordPressのインストール
ここからはコマンドを使っていきますのでIDE上でターミナルを開きます。
「View」の「Console」をクリックしてコンソール画面を表示。
ターミナルが出ていなければ⊕ボタンから「New Terminal」をクリックします。
そしてwgetコマンドでWordPress本体をダウンロードします。
次に解凍。
wordpressというディレクトリの中に本体ファイルが入っていることが確認できます。
解凍前のlatest.tar.gzはもう削除して大丈夫です。
次に、MySQLを起動してWordPress用のデータベースを作成していきます。
MySQLの起動
rootでログイン
データベースの作成
ユーザーとパスワードの作成
ユーザへ権限付与
終了
これでデータベースの作成は完了しましたので、
パブリックIP:8080/wordpress/にアクセスしてみてWordPressのインストール画面が出るか確認しましょう。
あとは画面に沿って必要事項を入力していけばWordPressのインストールは完了です。
複数のWordPressをインストールする場合は、ディレクトリを分けて今やった作業を繰り返すだけです。
使ってみた感想
メリット
- 簡単に開発環境を構築できる
- インスタンスの自動停止時間を設定できるためコストが節約できる
デメリット
- 表示速度が遅い時がたまにある。WordPressのまっさらのトップページでも2〜4秒かかったり。リージョンが東京じゃないからなのかビルトインウェブサーバーなのかは不明。
以上のことから「速度が多少遅くても気にしない、コストを最小限にしたい」という方はこの記事の方法で、
「サクサク本格的に開発したい、コストは多少掛かってもいい」という方はKUSANAGIなりFastPressなりで別個にサーバーを構築して、そこにSSH接続して使う方法がオススメです。
SSH接続して使う方法については「AWS Cloud9の導入方法〜SSH接続編〜」に書きましたのでそちらをご覧ください。