docker

【AWS】EC2にdockerをインストールしてみた

Windows環境でdockerをインストールしてみたのですが、WindowsではVirtualBoxが仲介してしまい、あまり使い勝手が良くないなと思いました。

なのでAWS上で構築した方が簡単かもしれないと思い、試してみました。

思っていた以上に簡単に構築できましたので、

下記にdockerをAWS上のEC2にインストールする手順を試してみました。

 

前提

・AWSのアカウントを作成していること

・EC2サーバを構築していること

EC2にdockerをインストールする手順

EC2へssh接続する

では、まずはEC2にローカル環境からssh接続してみましょう。

 

コマンドプロンプトで下記コマンドを実行し、ログインできることを確認します。

ssh -i <<キーペア>> ec2-user@<<グローバルIPアドレス>>



キーペアはEC2にログインするための秘密鍵になります。 EC2サーバを構築時に取得したものを使用します。 AmazonLinuxのログインユーザには、ssh接続の際は「ec2-user」がデフォルトのようです。 ssh接続後は、下記のようにログインできていることを確認できます。

Complete!
[ec2-user@ip-192-168-1-97 ~]$

 

ログイン後はdockerを下記コマンドにてインストールします。

sudo yum -y install docker

dockerをインストールしたら、起動させます。

sudo service docker start

 

Dockerfileを使ってDockerイメージを作成


作業用のフォルダを作成します。

mkdir hello-docker
cd hello-docker


次に、事前準備として、nginxからWEBページを表示させるHTMLファイル(hello.html)を作成しましょう。

HELLO FROM DockerComplete!


ここでは、上記で準備したHTMLファイルの内容を、WEBサーバのnginxで表示してみます。

まずは「Dockerfile」を用いてdockerイメージを取得します。

FROM nginx  #①
COPY ./hello.html /usr/share/nginx/html/ #②

①では、ベースとするDockerイメージである、nginxを指定しています。

②ではHTMLファイルを、nginxの公開ディレクトリ配下にコピーしています。

 

それでは、作成したDockerfileを作業用のフォルダに配置し、Dockerイメージを作成します。
Dockerビルド(Dockerイメージを作成するコマンド)を実行します。

cd <Dockerfileが存在するディレクトリ> 
sudo docker build -t <<イメージ名(任意)>> .


これでnginxのDockerイメージが作成できました。それでは、このDockerイメージを使用して、コンテナを起動します。

sudo docker run -d -p 80:80 <<イメージ名(任意)>>

WEBページのデフォルトであるポート番号(80)を指定して実行するのを忘れないようにします。

では、実際にコンテナが起動されているかを確認します。下記をエクスプローラから実行してみましょう。

<<グローバルIPアドレス>>/hello.html

 

指定したIPアドレスにて、WEBページが表示されていることが確認できました。

これで、EC2にdockerのインストール、およびnginxでWEBページを表示することができました。

 

まとめ

AWSのEC2サーバにdockerをインストールする方法について纏めました。

コマンドを実行するだけで簡単に構築することができました。

dockerをWindows環境で使うことを迷ったなら、ぜひAWSで構築するのも良いと思います。

 

 

 

ABOUT ME
retry
20台後半でエンジニア。脱ブラックに成功し、ホワイト企業にステップアップ。悔いのない人生を送り、もっと豊かになりたい一心で、新しいことに挑戦中です。プログラミングはruby on rails、ブログを始めました。自分と同年代の方に向けて、ためになる内容を発信していきます。