AWSでDockerを使ってみよう!

Pocket

こんにちは、鈴木です。

最近のホットな技術と言えば Docker ですね!

と言いつつ使ったことが無かったので Docker 入門しました!

コンテナ?仮想技術?それは何?何が良いの?と色々な疑問を少しずつ明らかにしていきたいと思います。

 

まずは Docker 公式サイトのチュートリアル

Docker の公式サイトには、ブラウザで Docker の基本的な操作を体験できるチュートリアルがあります。

「Docker やってみようかな・・。どうしようかな・・。」と迷っている方は、チュートリアルを触ってみましょう!

以下のページの「Start The Tutorial」というボタンを押すと Docker のチュートリアルが始まります。

Online Tutorial - Try It! - Docker

「Docker Engine Parts」と書かれた項目は概要的な説明です。

「Assignment」と書かれた項目は「これをやってみましょう!」というミッションなので、内容を良く読んでから、コンソールにコマンドを打ってみましょう。

「Show the Answer」をクリックすると答えが表示されてしまうのでいきなりクリックせずに、「Tips」に書かれているヒントを手掛かりに問題を解いていきます。

 

AWS で Docker を試す

チュートリアルはすぐに終わってしまうので、実際に Docker をインストールして動かしてみましょう。

AWS を利用すると動作環境の構築や破棄が手軽にできるので、実験用の EC2 インスタンスを作成します。

AWS で EC2 インスタンスを立ち上げる

AWSでEC2インスタンスを立ち上げます。OS は Amazn Linux として進めます。

EC2 インスタンスが立ち上がったら SSH でログインし、Docker をインストールします。

 Docker のデーモンを起動する

インストールできたら Docker のデーモンを起動します。

これで Docker が使える状態になりました。

まずはヘルプを表示する

まずはヘルプを表示しましょう。

こんな感じでヘルプが出力されるはずです。

何はともあれヘルプを表示する方法を知っておくことは大切だと思います。

チュートリアルのイメージを取得する

Docker 公式サイトのチュートリアルで使用していたイメージを取得してみましょう。

イメージの一覧を確認します。

以下のように取得したイメージ(learn/tutorial)が表示されるはずです。

 Hello Docker する

取得したイメージ(learn/tutorial)でコマンドを実行してみます。

「Hello, Docker!」と表示されれば成功です。

ping をインストールする

Docker 公式サイトのチュートリアルに倣って、ping をインストールしてみましょう。

※取得した learn/tutorial は Ubuntu なので apt-get で ping をインストールします。

docker help run で確認すると分かるのですが、上記コマンドは「コマンドを新しいコンテナで実行する」という処理になります。

docker ps -l を実行するとコンテナの一覧を表示することができます(オプションの -l は --latest=true と同じで最後に作成されたコンテナを表示します。-a  または --all=true を指定すると全てのコンテナを表示することができます)。

この結果の「CONTAINER ID(最初の列)」の値「b103b483a4c0」はすぐに使うので注目しておいてください。

イメージを保存する

Docker 公式サイトのチュートリアル通りに、新しいイメージ learn/ping として保存しましょう。

docker ps -l で確認したコンテナ ID (の先頭 4 文字でOK)を引数に、docker commit を実行します。

これで新しいイメージ learn/ping として保存することが出来ました。確認してみましょう。

以下のように最初に取得した learn/tutorial と、今作成した learn/ping が表示されるはずです。

 ping を実行する

それでは新しく作成したイメージ上で ping を実行してみましょう。

ping の結果は返ってきたでしょうか?

 

まとめ

Docker 公式サイトのチュートリアルを参考に、AWS 上に立ち上げた EC2 インスタンス(Amazon Linux)で Docker を実行しました。

とりあえず動かしたというレベルですが、まずは最初の一歩を踏み出すことが出来ました。

 

Pocket

Comments are closed, but you can leave a trackback: Trackback URL.