読者です 読者をやめる 読者になる 読者になる

時と場合によりけり

日々のアップデートとイノベーションに翻弄され彷徨える IT エンジニアの覚書

macOS Sierra に Docker for Mac で Amazon Linux を導入する

概要

公式 Amazon Linux が、ようやく Dockerhub に登録されましたね。

https://hub.docker.com/r/_/amazonlinux/

Docker for Mac を使って、ローカル環境に Amazon Linux をインストールして、仮想 EC2 を作ってみましょう。Docker for Mac のインストールについては、以下のエントリーをご参照ください。

stangler.hatenablog.com

ハードウェア

  • マシン: Macbook Pro Early 2011
  • メモリ: 16 GB
  • ストレージ: SSD 512 GB

ホスト

  • OS: macOS 10.12.1 Sierra
  • Docker for Mac Version 1.12.3

ゲスト

ディレクトリ作成

まずは作業するディレクトリをローカル環境に作ります。今回は、ec2 という名前にします。

% mkdir ec2
% cd ec2

docker-compose.yml

後々、冗長構成にすることも考慮して、docker-compose を使用することにします。

% vim docker-compose.yml
version: '2'
services:
  ec2:
    image: amazonlinux
    command: tail -f /dev/null
    container_name: ec2

tail -f /dev/null は、コンテナが起動し続けるようにするためのおまじないです。

コンテナ起動

% docker-compose up -d
Creating network "ec2_default" with the default driver
Pulling ec2 (amazonlinux:latest)...
latest: Pulling from library/amazonlinux
67b04f48477e: Downloading [>                                                  ] 67b04f48477e: Downloading [>                                                  ] 67b04f48477e: Downloading [>                                                  ] 67b04f48477e: Downloading [=>                                                 ] 67b04f48477e: Downloading [=>                                                 ] 67b04f48477e: Downloading [=>                                                 ] 67b04f48477e: Downloading [=>                                                 ] 67b04f48477e: Downloading [==>                                                ] 67b04f48477e: Downloading [==>                                                ] 67b04f48477e: Downloading [==>                                                ] 67b04f48477e: Downloading [==>                                                ] 67b04f48477e: Downloading [===>                                               ] 67b04f48477e: Downloading [===>                                               ] 67b04f48477e: Downloading [===>                                               ] 67b04f48477e: Downloading [===>                                               ] 67b04f48477e: Downloading [====>                                              ] 67b04f48477e: Downloading [====>                                              ] 67b04f48477e: Downloading [====>                                              ] 67b04f48477e: Downloading [=====>                                             ] 67b04f48477e: Downloading [=====>                                             ] 67b04f48477e: Pull complete
Digest: sha256:ec8257763aea7bd6cefce8d217deaf1b184426d3ab5fda2f98428921107cb72e
Status: Downloaded newer image for amazonlinux:latest
Creating ec2

コンテナ確認

コンテナの状態を確認します。

% docker-compose ps
Name        Command        State   Ports
----------------------------------------
ec2    tail -f /dev/null   Up

バージョン確認

シェルでコンテナの中に入って、インストールされた OS のバージョンを確認して見ます。

% docker exec -it ec2 bash
# cat /etc/system-release
Amazon Linux AMI release 2016.09

無事に Amazon Linux がインストールされた模様です。

docker イメージの確認

何も手を加えない公式イメージのサイズを見てみましょう

% docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
amazonlinux         latest              57cfffcf4ff3        31 hours ago        328.3 MB

328.3 MB ですね。Alpine Linux とかに比べると大きいですが、許せる範囲だと思います。(ホストマシンのパワーにもよりますが。)

コンテナの停止と削除

最後にコンテナを落としておきます。

% docker-compose down

以上です。