AWS Cloud9を使ってみよう!

プログラミング
サーバーを購入することなくアプリケーションを簡単に構築でき、新しいプロジェクトを迅速に開始することができるクラウドベースの統合開発環境 (IDE) のAWS Cloud9、このサービスの導入方法を解説します。さらに、開発環境の立ち上げ、MySQLの設定、RubyやPythonを使ったアプリ開発の方法を説明します。
AWS Cloud9を使ってみよう!

今の時代、プログラム言語の種類が沢山あり、言語ごとにサーバーの環境構築が必要になることがあります。また、リモートで仕事を行う人も増えています。そんな中、クラウド環境で、プログラム開発環境を手軽に構築できるなら、沢山の悩みを解決できるのではないでしょうか?

本記事では、AWS Cloud9(コードを記述、実行、デバッグできるクラウドベースの統合開発環境 (IDE))の導入方法と、開発環境の構築方法を解説します。

AWS Cloud9を導入してみる

開発環境の構築には手間と時間がかかります。「素早く、簡単に使えるサービスはないだろうか…。」そんな要望にこたえてくれるのが、AWS Cloud9です。では、AWS Cloud9の概要と特徴、料金設定、開始方法をみていきましょう。

AWS Cloud9とは

AWS Cloud9 は、ブラウザのみでコードを記述、実行、デバッグできるクラウドベースの統合開発環境 (IDE) です。開発に必要な機能やツールがパッケージ化されており、自由に使用することができるため、自社で開発環境を準備することなくアプリケーションを開発することができます。

AWS Cloud9には幾つかの利点があります。

  • ブラウザのみでコードを記述することができます。サーバーのパッチなど、メンテナンスを実施したりする必要はありません。
  • リアルタイムに共同でコーティングを行うことができます。チームメンバーは、互いのコーディングをリアルタイムで確認でき、チャット機能を使って話し合えます。
  • サーバーレスアプリケーションを簡単に構築できます。サーバーレス開発に必要な、SDK、ライブラリ、プラグイン、さらにテストおよびデバッグする環境も用意されています。
  • AWSのサービスに直接ターミナルアクセスすることができます。
  • 新しいプロジェクトをすばやく開始することができます。40を超えるプログラミング言語用のツールがあらかじめパッケージ化されており、迅速に開発プロジェクトの立ち上げが可能です。

AWS Cloud9の料金

アプリケーション開発を行う上で、必要な機能やツールをクラウドで提供してくれるAWS Cloud9、使用するにあたっての料金が気になるところです。

AWS Cloud9 には最低使用料金や前払費用はなく、実際に使用した分に対して料金が発生します。つまり、AWS Cloud9 の料金は無料ですが、この開発環境に Amazon EC2 インスタンスを使用する場合は、コードの実行と保存に使用されるコンピューティングおよびストレージリソース(EC2 インスタンス、 EBS ボリュームなど)に対して料金が発生します。

AWS 無料利用枠の対象であれば、AWS Cloud9 を無料で使用できます。当然、AWS Cloud9 環境で無料利用枠を超えるリソースを利用した場合は、通常の AWSサービス料金が発生します。

詳しくは「AWS Cloud9 料金」ページをご確認ください。

AWS Cloud9の利用開始手順

AWS Cloud9 の使用を開始するには、次の4つのステップが必要です。

ステップ1:AWS アカウントの作成
AWSにアクセスし、「AWS アカウントの作成」を実施します。

ステップ2:IAM グループとユーザーを作成し、ユーザーをグループに追加する
AWS Identity and Access Management (IAM) でグループとユーザーを作成し、ユーザーをグループに追加してから、このユーザーを使用して AWS Cloud9 にアクセスします。

ステップ3:グループに AWS Cloud9 アクセス権限を追加する
IAM を使用して 1 人以上のユーザーが属している IAM グループに AWS Cloud9 へのアクセス許可を追加します。

ステップ4:AWS Cloud9 コンソールへのサインイン
AWS Cloud9 コンソール を開きます。 IAM ユーザーの AWS アカウント番号を入力しサインインします。

詳細なセットアップ手順は、「AWS Cloud9 のチームセットアップ」をご参照ください。

AWS Cloud9で開発環境を構築してみる

では、AWS Cloud9で開発環境を構築していきましょう。

AWS Cloud9の開発環境の立ち上げ

まず、AWS Cloud9 コンソール にサインインします。上部のナビゲーションバーで、開発環境を作成する AWS リージョンを選択します。 ウェルカムページが表示されたら、New AWS Cloud9 environment(新しい AWS Cloud9 環境)で、[Create environment (環境の作成)] を選択します。
[Name (名前)] に、今回作成する開発環境の名前を入力し、[Description (説明)] ボックスに、開発環境の説明を入力します。特別な設定が必要なければ、デフォルトのまま開発環境を作成します。

詳しい手順は、こちらを参照してください。

AWS Cloud9でMySQLを設定する

AWS Cloud9で開発環境の構築(2019年3月19日時点)を行うと、MySQLのバージョンは「5.5」がインストールされています。少し古いバージョンとなりますので、バージョン「5.7」に更新してみましょう。

ステップ1:MySQL5.5のアンインストールを行います

sudo yum -y remove mysql-config mysql55-server mysql55-libs mysql55

ステップ2:MySQL5.7のインストールを行います

sudo yum -y install mysql57-server mysql57

ステップ3:MySQL5.7の文字コードの設定します
mysqlとクライアントのデフォルトの文字コード(utf8mb4)を設定します。この設定を忘れると、新たにテーブルを追加するときに、DEFAULT CHARSET=utf8 のテーブルができます。

viエディタを使って設定ファイルを開きます。

sudo vi /etc/my.cnf

次の設定を追記します。

[mysqld]

character-set-server=utf8mb4

[client]

default-character-set=utf8mb4

追記後、viエディタを上書き保存で閉じます。

ステップ4:MySQL5.7の起動・確認します
MySQL5.7を起動します。

sudo service mysqld start

MySQL5.7のデータベースをアップグレードします。

sudo mysql_upgrade -u root –force

アップグレード後、再起動します。

sudo service mysqld restart

サーバー再起動時、MySQLの自動起動の設定をします。

sudo chkconfig mysqld on

MySQLのバージョンを確認します。

mysql --version

AWS Cloud9でRubyを使ってみよう!

AWS Cloud9開発環境のRubyを使ってみましょう。

ステップ1:Ruby、Ruby on Railsのバージョンを確認します

ruby -v
rails -v

バージョンを変更する必要があれば、バージョンを変更します。

ステップ2:Raileを使って、アプリケーションを作成します

rails new myapp

ステップ3:Railsサーバーを起動し、実行確認を行います

cd myapp

Active Record のエラーを回避するため、myapp ディレクトリにある Gemfile というファイルを開きます。「gem 'sqlite3'」の行を、「gem 'sqlite3', '~> 1.3.6'」に変更して保存します。その後、必要なパッケージの取得を行います。

bundle install
rails s

サーバーが立ち上がりますので、AWS Cloud9の「Preview」メニューより、実行確認を行います。

AWS Cloud9でPythonを使ってみよう!

最後に、AWS Cloud9開発環境のPythonを使ってみましょう。

ステップ1:Pythonのファイルを作成します
「python」というフォルダを作成し、その直下に、「hello.py」というファイルを作成します。

mkdir python
cd python
touch hello.py

ステップ2:「hello.py」ファイルを編集します
「Hello World on AWS Cloud9!!」という文字列を出力させるコードを記述します。

コード

print "Hello World on AWS Cloud9!!"

ステップ3:「hello.py」ファイルを実行します

コマンド

python hello.py

実行結果

Hello World on AWS Cloud9!!

まとめ

AWS Cloud9を使用すると、ブラウザのみでコードが記述でき、リアルタイムに共同でコーディングができます。サーバーを購入することなくアプリケーションを簡単に構築でき、新しいプロジェクトを迅速に開始することができます。

スピードが求められる今の時代、このサービスが提供する価値はプライスレスです。AWS Cloud9を実際の業務に活用していきましょう!


この記事のキーワードに関する勉強会・イベントを探す

TECH PLAYでは、ITエンジニア向けの勉強会・イベント情報を提供しています。
興味のある方はぜひご参加ください。


おすすめのコラム