アプリケーション動作確認

Cloud9 の環境で実行したコンテナを実行し、動作確認をします。セキュリティーグループを設定することで、Cloud9 の 80 番ポートに外部から接続できるようにします。


Docker コンテナの実行

Cloud9 上で先程作成した Docker イメージ から、Docker コンテナを起動します。
docker run コマンドに、引数としてイメージ名 (rails-container)やバージョン(latest)、ポート(ホスト側80:コンテナ側3000) を 渡すことでコンテナを実行できます。

docker run -d -p 80:3000 rails-container:latest 

実行しているコンテナは次のコマンドで確認ができます。

docker ps

このコマンドで、ホスト側の 80 番ポートがコンテナ内の 3000 番にフォワーディングされていることが確認できます。
そして、rails アプリケーションは コンテナ内の 3000 番ポートで実行するよう Dockerfile 内で記述済みです。

これから手元のブラウザで Web アプリケーションの実行結果を確認していきます。


セキュリティーグループの設定

現在、コンテナ Web アプリケーションは Cloud9 上で動作しています。
ブラウザから Cloud9 が動作している EC2 インスタンスにアクセスするためにはセキュリティグループの設定が必要です。

Cloud9 のタブはそのままに、ブラウザで別タブからマネージドコンソール画面を開いて下さい。

コピーしたパブリック DNS をお使いのブラウザで開いて、次のような画面が表示されていれば完成です!おめでとうございます! (httpsではなく、 http でアクセスします。)

Ruby on Rails 自体は次のようなサイトで学習することが可能です。 https://railstutorial.jp/
コンテナイメージを再度 build することで開発したコードを同様にコンテナ化することができます。

次のハンズオンでは、AWS サービスを使ってコンテナの実行をスケールさせる方法を学んでいきます。