今回はDockerfileからイメージを作成する例として、ubuntuにnginxをインストール・起動し、Webサーバーとして動作するDockerイメージの作成手順を紹介する。

Dockerfileの作成

まず、以下のコマンドを記述したDockerfileを作成する。

FROM ubuntu

RUN apt-get update && apt-get install -y nginx

EXPOSE 80
ENTRYPOINT ["nginx", "-g", "daemon off;"]

ここで少しコマンドの解説をしよう。

まず1行目のFROMコマンドはベースとなるイメージの指定、3行目のRUNコマンドではshellで実行するコマンドを指定している。
今回はnginxをインストールするためのコマンドのみでOK。

5行目のEXPOSEコマンドは使用するポートの宣言。
これはあくまで明示的な宣言なので、別になくても構わないが書いた方が分かりやすい。

6行目のENTRYPOINTコマンドは、コンテナを起動した際に実行するコマンドの指定だ。
Dockerでnginxを扱う場合、daemon off;の指定がないとコンテナが終了してしまうので、起動時に必ず必要なコマンドだ。

buildコマンドでイメージ作成

Dockerfileが用意できたらイメージを作成する。

docker build -t sample:nginx .

buildが完了したら、イメージが作成されたことを確認する。

docker images

一覧に作成したDockerイメージが表示されていればOK。

コンテナを起動し動作確認

最後にコンテナを起動して動作確認を行う。

docker run -d -p 80:80 sample:nginx

上記コマンドを実行後、ブラウザでlocalhostにアクセスし、nginxのWelcomeページが表示されれば成功だ。