プログラム関係の備忘録。技術系記事1000記事以上を目指すブログ

【Docker】Docker教科書を読んでDockerを身に付ける③

  • 2018年8月26日
  • Docker
  • 74view
  • 0件

はじめに

前回まで
【Docker】Docker教科書を読んでDockerを身に付ける①
【Docker】Docker教科書を読んでDockerを身に付ける②

Dockerfileとは

公開されているDockerイメージをダウンロードしてそのまま使うのではなく、
自分用に必要な設定を整えたDockerイメージを使用したい。
その場合にDockerfileというファイルを用意し設定を書く。
Dockerはその設定を読込むことで、必要なDockerイメージを自動的に作ることができる。

makeツールのMakefileや、cmakeのCMakeListsのようなイメージ。
DockerイメージをテキストベースであるDockerfileを使って作成するようにしておくことで、面倒なインフラ部分もソースで管理できるというのがメリット。

Dockerfileの書き方

書き方はシンプルで以下のような書式となる。
実行時には一行ずつ順番に実行される

#コメント
{命令}{引数}

例えば、Dockerでubuntu16.4の環境をベースにしたい場合
dockerfile.txt

FROM ubuntu:16.04

Dockerfileを作ったディレクトリで以下コマンドを叩く
これでDockerfileを元にimageをbuildすることができる
docker build -t {image名称} .

ubuntuという名称のdockerimageを作る場合

docker build  -t ubuntu .

imageが作られたかどうかの確認

docker images

コンテナを起動
docker run -it {image名称}

docker run -it ubuntu

上記のDockerfileではベースイメージ指定しているだけだが、その後にApache入れたりなんだりとコマンドを書き足していくことで、一発でインフラ環境の整ったimageを作ることができる。

Dockerfileの編集方法は、書き足す度にbuildするのではなく、作ったimageのコンテナ内で作業を進めつつ、通ったコマンドをDockerfileに追記していくというやり方が正しいらしい。

コンテナの中に入るには以下

docker run -it {image id}