Windows7 で Docker をインストールして php の実行環境を作成する

はじめに

Windows7 に Docker をインストールする必要があったため、その時の備忘録です。
Windows7 では Docker for Windows が使用できないため、Docker Toolbox for Windows を使用します。

目次

環境

  • OS : Windows 7 Pro 64bit
  • その他 : Docker Toolbox for Windows, VirtualBox ※1, Git ※1
    ※1 今回は事前に VirtualBox と Git をインストール済みの環境で作成

Docker Toolbox for Windows のインストール

下記ページの内容にしたがって、インストールしていきます。

Install Docker Toolbox on Windows

Docker Toolbox のダウンロード

上記のページ内の、Get Docker Toolbox for Windows のボタンをクリックすると、DockerToolbox.exe のダウンロードダイアログが開くので、ファイルを任意の場所へ保存します。

Docker Toolbox のインストール

ダウンロードした exe ファイルをダブルクリックして、インストールを実行します。 基本的にデフォルトの設定で Next ボタンを押していけば大丈夫ですが、VirtualBox や Git が既にインストールされている場合は、インストールするコンポーネントの選択画面でチェックをはずします。

インストールの確認

インストール完了後、Docker Quickstart Terminal を起動します。初回起動時は環境設定の処理が走るため時間がかかりますが、正常にインストールされていればクジラのアスキーアートが表示されます。

                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/

docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com


Start interactive shell

ここに表示されている IP192.168.99.100 が default の docker マシンに割り当てられた IP アドレスです。 以下のコマンドでバージョンが表示されればOKです。

& docker --version
Docker version 18.03.0-ce, build 0520e24302

Docker Quickstart Terminal 起動時のエラーについて

Docker Quickstart Terminal の起動時、Looks like something...Press any key to continue... と表示され処理が止まってしまう場合、C:\Program Files\Docker Toolbox 内の start.sh を管理者権限で以下のように書き換えます。

start.sh
  ...........
  STEP="Finalize"
- clear
+ #clear
  cat << EOF
  ..........

実行環境の作成

D:\wk\test\ に以下のようなフォルダ構成で環境を作成します。

root
┣ html
┃   ┗ index.php
┗ docker-compose.yml

docker-compose.yml の作成

docker-compose.yml ファイルを作成し、以下の内容を記述します。

docker-compose.yml
apache-php:
  image: php:7.0.21-apache
  ports:
    - "80:80"
  volumes:
    - ./html:/var/www/html
  • image : 使用するイメージファイルを設定する。ローカルに存在しない場合はリモートから取得する。
  • ports : ポートを設定する。ローカルのポート:コンテナのポート。
  • volumes : ボリュームのパスを設定する。ローカルのパス:コンテナのパス。(パスについては次の項目を参照)

Virtualbox の共有フォルダ設定

初期設定では C:\Users が共有フォルダとして設定されていますが、今回は D ドライブを使用するため共有フォルダを追加します。

手順

  1. VirtualBox マネージャーを起動すると default という名前の仮想マシンがあるのでそれを選択して [設定]->[共有フォルダー]->[共有フォルダーの追加] を選択する。
  2. フォルダーのパスに D:\ 、フォルダー名に /d と入力して、「自動マウント」と「永続化する」にチェックをいれて OK ボタンを押す。
  3. 仮想マシンを再起動する。

コンテナの起動

root フィルダで以下のコマンドを実行してコンテナを起動します。

$ docker-compose up -d

php の確認

index.php に以下の内容を記述し、ブラウザから http://192.198.99.100 にアクセスして php の情報が表示されれば成功です。