はじめに
永らく放置をしていたこのブログですが、久しぶりに更新をします。
これまではXAMPPを使ってローカルに環境を構築してカスタマイズなどをしていたのですが、Dockerの環境を整えることにしました。
コンテナってなんだ?と思いながら試行錯誤で構築した備忘録になります。
仮想化の有効化
Hyper-Vを利用するには仮想化が有効である必要があります。
タスクマネージャーを起動し、パフォーマンスタブから仮想化の状態が「有効」になっていることを確認します。

「無効」になっている場合は下記のコマンドで有効化できます。
bcdedit /set hypervisorlaunchtype auto
Hyper-V
コントロールパネルの[プログラム]-[Windowsの機能の有効化または無効化]から「Hyper-V」にチェックを付けます。

Docker for Windows のインストール
下記のサイトからインストーラをダウンロードできます。
https://docs.docker.com/docker-for-windows/install/
インストール自体は画面に従って実行をしていきます。
Docker Desktopのバージョンは2.0.0.3がインストールされました。
dockerは18.09.2がインストールされました。

CentOS7を起動してみる
試しにCentos7のコンテナを作成、起動してみます。
操作にはPower Shellを使います。

今回はCentOS Linux release 7.6.1810がインストールされました。
初回はイメージのダウンロードが必要となり、時間がかかりますが、2回目からは数秒で起動することができます。
はまりどころ
イメージのダウンロードができない
再現ができなかったのですが、最初はイメージのダウンロードに失敗することがありました。
そんな時は、Dockerの[Setting]-[Network]-[DNS Server]の設定をFixedに変更すると解決できました。

自動起動について
Dockerの[General]-[Start Docker Desktop when you log in]のチェックを外しても自動で起動してしまうようです。
インストーラーの作成するレジストリの値と、[Start Docker Desktop when you log in]で操作するレジストリの値が異なることが原因のようです。
気になる方は下記のページを見てください。
https://github.com/docker/for-win/issues/2950
Kitematic のインストール
KitematicとはDockerの操作をGUIでできるようにするツールです。
トスクトレイのDockerから[Kitematic]を選択するとダウンロードを勧めるダイアログが表示され、Kitematicをダウンロードすることができます。
ダウンロードしたKitematicを解凍し、C:\Program Files\Docker\Kitematic
に配置します。
もう一度、タスクトレイのDockerから[Kitematic]を起動します。

DockerHubのコンテナを検索したり、作成済みのコンテナの起動や停止、shの起動などGUIでできるようになります。
まとめ
dokerが動作する環境を整えることができました。
次は、Apache + PHP + MySQL (+ phpMyAdmin) の環境を整えていきたいと思います。
node.jsにしない理由はこのサーバーがApacheだからとかそんな理由です。
[AD]