概要
Amazon Web Services(AWS)を提供するAmazonでは、Cloud9というブラウザ上でプログラミングができるサービスを運営していた会社を買収しました。
そして遂に、AWSでもそのCloud9を使えるようになりました。
2週間程度ですが、Ruby on Railsのアプリケーションを開発するために使ってみたので、その使用感や感想を書きたいと思います。
ちなみに、使用感や感想に絞って書くので、使い方については説明しません。
この記事の執筆時点では、東京リージョンではAWS Cloud9を使うことができず、一番近いところではシンガポールで使えるということで、私はシンガポールリージョンで利用しました。
Cloud9との違い
私は、AWS Cloud9の前に、Cloud9という本家のサービスも使用していました。こちらはプロジェクトごとに、Dockerで環境が作られ、利用するためのアカウントの作成にクレジットカードの登録が必須で、無料で使うのであれば1つだけ非公開のプロジェクトを使うことができ、それ以外は全て全世界にプロジェクトが公開されます。そのため、オープンソースなどの公開しても構わない開発であれば気軽に使うことができますが、業務などで使うには、有料のプランを使う必要がありました。
しかし、AWS Cloud9では、全てが有料のプランになりました。プランの具体的な料金としては、DockerではなくAWSのEC2で環境が作られ、AWS Cloud9の料金はCloud9の使用料はないので、EC2の料金と同じです。
さらに、AWS Cloud9を使っていない時は自動でEC2がシャットダウンされ、課金されません。シャットダウンされているときに課金されるのはストレージのみです。
ちなみに、AWS Cloud9の環境はCentOSを元にした、Amazon Linuxで作成されているようでした。
環境の用意
AWS Cloud9のためのEC2を作成した際に、すぐに開発できるとは限りませんでした。
一通りの環境はインストールされているようでしたが、開発に使用しているライブラリによっては、新たにOSにパッケージを追加したいということがあります。私の場合は、ImageMagickが使いたかったのですが、それがインストールされていませんでした。
その場合は、Amazon Linuxが使われているということで、yumコマンドが使えるので、このコマンドでパッケージを追加しましょう。
エディタの使用感
AWS Cloud9では、ACEというエディタが使われています。このエディタはJavaScriptで記述されているため、ブラウザ上で動作します。
やはり、ブラウザ上で動作するため、他のデスクトップ上で動作するエディタよりは機能が少なく物足りないと思いました。
例えば、ファイルの保存時にファイルの末尾に改行を入れて欲しかったのですが、そのような機能はありませんでした。ちなみに、ファイルの保存時に行の末尾の空白を取り除く機能は、オプションとして提供されていました。
当たり前かもしれませんが、プラグインなどがないため自分で機能を追加できません。
内部ではEC2が動いているということで、ターミナルが用意されています。そのため、強引ですがvimやemacsなどを使って開発することも可能です。
デバッグの使用感
私は、Ruby on Railsのアプリケーションの開発のために使っていたのですが、デバッグとしてウェブサーバを立ち上げてそこにブラウザから接続します。
うれしいことに、ウェブサーバを立ち上げると自動で指定されたドメインにアクセスすることで、起動したウェブサーバにアクセスすることができました。
ウェブサーバには、HTTPSでアクセスできるため、人によってうれしいのではないでしょうか。
感想
パソコン上での開発に比べると機能が今ひとつに感じられました。
しかし、非力なパソコンでインターネット環境が良い場合や、パソコンにとらわれず、色々なパソコンで開発することを目指すノマドワーカーのような人におすすめだと思います。
私はもう少し使ってみようと思っていますが、もし今後、あまりにもエディタにストレスがたまってきた場合は、vimやemacsにプラグイン入れて使おうかなと思います。