今回はDockerfileについて開設していきたいと思います。
Dockerfileとは?
Dockerfileとは、ベースイメージに加える変更をコードとして記述したファイルです。このDockerfileを使うことで、簡単にオリジナルのDockerイメージを作成することができます。ちなみに、ベースイメージに加えた変更は、その数だけ新たなイメージを作り、重なっていく仕組みになっています。このイメージ1つ1つのことを「レイヤ」と呼び、Dockerイメージはこのレイヤ(変更イメージ)を重ねて、新たなイメージを作っていきます。そして、Dockerfileはこの「レイヤ」をコード化するための方法になります。
Dockerfileのメリット
####・ 構築手順をコードとしてファイルに残せる
####・ 構築の修正が簡単
####・ 簡単に共有できる
####・ バージョン管理ができる
このように、インフラの構築をコード化して管理する考え方を「Infrastructure as Code」といいます。
Dockerfileからイメージの作成&起動
このような構成で作っていきます。今回はすごく簡単にDockerfileからイメージを作成し、コンテナを起動するときにマウントしていきます。http://localhost:81/ にアクセスできるまでいきます。
Dockerfileの作成
<?php
phpinfo();
?>
FROM php:7.4.15-apache
Dockerfileの内容でイメージをビルドする
* Dockerfileのあるディレクトリにて行うことが一般なので . としている
* PHPは名前
$ docker build -t php .
コンテナの作成と起動
* -v (ホスト:コンテナ) とすることでマウントしている。
* -p ホストのポートとコンテナのポートに繋げている。
$ docker run -d --name phpcontainer -v [絶対パス(・・・/html)]:/var/www/html -p 81:80 php
コマンドを実行し、http://localhost:81/ にアクセスすると下のように表示できれば完成です。