PR

【AWS】ブラウザ上でプログラミング開発ができるCloud9のセットアップ手順

【AWS】ブラウザ上でプログラミング開発ができるCloud9のセットアップ手順 プログラミング
【AWS】ブラウザ上でプログラミング開発ができるCloud9のセットアップ手順

こんにちは。

久しぶりのプログラミングの話ですが、みなさんプログラミングの開発環境ってどんな感じでしょうか?

以前よりは開発環境の構築も簡単になり、複数人で開発を行う場合でも簡単に開発環境がシェアできるようになりましたが、以前の僕はというと、

  • Vagrant
  • VirtualBox
  • SublimeText or Atom
  • etc

このようなツールやもっと前にはXAMPPなども使って開発を行ってきました。

ただブラウザ上でプログラミング開発できればもっと楽ですよね

WindowsやMacなど環境に左右されずに開発が行えれば、ネット環境さえあればノートパソコンを持ってどこでも開発が行えます。

クラウドIDEとも言われますが、その中でも有名なCloud9を今回はご紹介いたします。

導入にちょっと躓いたところもあったので、手順などもシェアさせて頂きます。

この記事の内容は、2020年09月25日時点の内容となります。最新の情報は各種リンク先をご確認ください。

ブラウザ上でプログラミング開発ができるCloud9とは?

そもそもブラウザ上でプログラミング開発ができるCloud9とは何か?

Cloud9とはAmazon Web Services(AWS)の1つのサービス

Cloud9 IDEはオンラインIDE ( 統合開発環境 )であり、バージョン2.0からバージョン3.0までのオープンソースとして公開されている。 C 、 C ++ 、PHP、Ruby、Perl、Python 、Node.jsを伴うJavaScript 、Goなどの複数のプログラミング言語をサポートしている。

Cloud9は、2016年7月にAmazonに買収され 、Amazon Web Services(AWS)の一部になった。 新規ユーザーは、AWSアカウントを介してのみCloud9サービスを使用できる 。

Wikipediaより引用

この通り、現在はAmazon Web Services(AWS)の1つのサービスとなります。

Amazonが買収するくらいですから、今後さらにブラウザ上での開発が浸透していくのではないか?と推測できます。

冒頭でもお伝え致しましたが、ブラウザ上で開発ができるので、ネット環境さえあればWindowsやMacなど環境を気にせずに開発ができる事も大きなポイントです。

VagrantとVirtualBoxを使った開発環境でも、WindowsやMacで共有して開発が行えますが、1度boxをパッケージ化しないといけないので、データ容量によっては時間もかかり非効率的です。

EC2やLightsailなどAWSサービス以外のサーバー(ホスト)にも対応

Cloud9はAWSの1つのサービスですが、実はEC2やLightsailなどAWS上のサーバー(ホスト)以外でも、要件を満たす事ができれば利用できます。

例えば他のデータセンター(DC)にあるサーバーでも要件を満たす事が出来ればCloud9が利用できます。

要件というのは以下の手順で詳しく説明します。

Cloud9でプログラミング開発を行うようにできる手順

Cloud9でプログラミング開発を行うようにできる手順を説明致します。

ちなみにAWSのドキュメントにも詳細な要件などが記載されておりますので、こちらも一緒にご確認ください。

この記事の手順については、CentOS6系と7系で実際に確認した内容となっております。

AWSのアカウントを持つ

まず、これがないとCloud9は利用できないですね。

さくっとAWSアカウントを作成しましょう。

作成だけでしたら料金がかかる事はございません。

EC2やLightsailは使った分だけ料金が発生しますが、Cloud9の利用に関しては料金が発生する事はございません。

ただしEC2のサーバーに対して、Cloud9を使う場合には、EC2の使った分だけの料金が発生致します。

※他のデータセンター(DC)にあるサーバーなどに対し、Cloud9を使う場合には、料金は発生しません。

ちなみにAWSのインフラ周りの学習については、こちらの記事にオススメ講座がありますので、参考にしてみてください。

Cloud9の利用に対しサーバー(ホスト)側の要件を満たす

Nodejsのインストール

AWSのドキュメントには「Node.js 0.6.16 から Node.js 12.xまでのバージョンがサポート」となっておりますが、僕の方で試すと正常に動作しなかったバージョンもありましたので、その中で試行錯誤し今回はv8.0.0をインストールしています。

// Cloud9で接続するユーザーにスイッチ
su - xxx

// Nodejsのインストール(ここではバージョン8.0.0としています)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
. ~/.bashrc
nvm install v8.0.0

Cloud9で接続するユーザーにスイッチする、というところがポイントです。

Python2.7のインストール

Python2.7がインストールされている必要があり、既に2.7がインストール済みの場合はこの手順は不要です。

// rootにスイッチ(sudoでも可)
su -

// Python2.7のインストール
yum -y install centos-release-scl-rh
yum -y install python27
python --version
scl enable python27 bash
python --version
echo 'source /opt/rh/python27/enable' > /etc/profile.d/python27.sh
source /etc/profile
python --version

Cloud9で接続するディレクトリパスの権限確認

Cloud9で接続するディレクトリパスの権限が適切でないと、正常に接続できません。

以下のように権限を付与しておきましょう。(ディレクトリパスが「~」の場合)

chmod u=rwx,g=rx,o=rx ~

Cloud9のIPに対し22ポートの許可設定

Cloud9を利用する上で、Cloud9のIPをサーバー側に許可しないといけません。

IPリストはこちらで確認できます。

東京リージョンの場合は、

  • 18.179.48.128/27
  • 18.179.48.96/27

これらのIP帯になりますので、それぞれのIP帯を許可しておきましょう。(EC2の場合はセキュリティグループで22ポートの許可設定を行い対象サーバーに適用)

Cloud9のインストーラーの実行

ネットの情報ではCloud9で接続した上でインストーラーの実行との記事も見かけますが、僕の環境ではうまくいかなかったので、直接実行します。

ちなみにAWSのドキュメントはこちらです。

// Cloud9で接続するユーザーにスイッチ
su - xxx

// インストーラーの実行
curl -L https://raw.githubusercontent.com/c9/install/master/install.sh | bash

インストーラーが失敗したり、うまくいかなかった場合に再度インストーラーの実行をしたい場合は、「~/.c9」のディレクトリを削除する事で、再度インストーラーを実行する事が出来ます。

Cloud9の設定

ここまできて、やっとCloud9の設定となります。

Cloud9の設定ステップ1
Cloud9の設定ステップ1

「Create environment」をクリック

Cloud9の設定ステップ2
Cloud9の設定ステップ2

「Name」を適当に入力して「Next step」をクリック

Cloud9の設定ステップ3
Cloud9の設定ステップ3

Environment type」は新しくEC2インスタンスを作成するか、既存のEC2や外部サーバーを利用するか、の選択になり、既存のEC2や外部サーバーを利用する場合は、「Create and run in remote server (SSH connection)」を選択します。

Instance type」と「Platform」と「Cost-saving setting」と「Network settings (advanced)」は新しくEC2を作成する場合に選択します。

Create and run in remote server (SSH connection)」を選択した場合には、別途「SSH server connection」というSSH接続入力エリアが表示されるので、接続情報を入力します。

入力内容が問題なく「Next step」をクリックすると、Cloud9で接続が試みられます。

入力内容が違っていたり、Nodejsなど要件を満たしていない場合はエラーが表示されるので、どのようなエラーか確認し、適時調整しましょう。

ここまできて設定など問題なければ、ブラウザ上でプログラミング開発ができるようになりますね。

まとめ

AWSのサービスの1つでもあるCloud9が利用できるまでをご紹介させて頂きました。

  • WindowsとMac両方からプログラミング開発が行える
  • EC2やLightsail以外のサーバーでも利用は可能
  • Cloud9自体の利用は無料

ネット環境さえあれば、WindowsでもMacでもプログラミング開発ができるというのは、今後さらにスタンダードになると思うので、この機会に開発環境を変えてみてはどうでしょうか?

最後まで見て頂きありがとうございました!

このブログは現役のエンジニア(プログラマー歴が約12年)の僕(よしたか)が2019年12月後半から日々更新しております。

もしもアフィリエイトは会員登録後も無料です!
今すぐ会員登録してアフィリエイトを始めよう!