プログラマのためのDocker教科書 第2版 インフラの基礎知識&コードによる環境構築の自動化
- 作者:WINGSプロジェクト阿佐 志保
- 出版社/メーカー: 翔泳社
- 発売日: 2018/04/11
- メディア: Kindle版
目次
背景・目的
これまでにこちらの記事で書いたように、
LinuxとDockerの基本について勉強しまし
た。
これらを参考に、今度は自分で自宅のWindows
PCにDockerを入れてLinux環境を構築してやろう
意気込んだのですが、Dockerをインストールする
だけで何故かつまらない問題にハマり続けたので、
その記録を残しておこうと思います。
試した環境
Windows 10 Home 64bit
手順のメモ
1. Docker for Windowsのインストールを試みて躓く
まずはこちらからDocker for Windowsの
インストーラをダウンロードします。
ここからダウンロードページに移動
できますが、この時にDockerアカウント
でのログインを求められます。
初めての場合はまずはアカウント作成により、
IDとパスワードを設定してください。そして
ログインするとこちらのページに移動します。
ここでDownload Docker Desktop for Windows
のボタンを押せば、インストーラがダウンロード
されます。
ワクワクしながらインストーラを起動したところ、
こちらのようになり早速躓いてしまいました。。
このメッセージにあるように、インストール
するにはWindows 10 ProかEnterprise
である必要があったのですが、自分のPCの
OSはWindows 10 Homeであることを
すっかり忘れていました。
2. Windows 10 HomeでDockerを導入する方法を調べる
別の方法を調べたところ、こちらのような
やり方を見つけました。
選択肢は2つで、WSL(Windows Subsystem
for Linux)のLinuxにDockerを入れる場合と、
VirtualBoxを利用したDocker Toolboxを
入れる場合があります。自分としては、
VirtualBoxでの起動の遅さを解消したかった
ので、前者のWSLを利用するやり方を試す
事にしました。
3. WSLをインストールする
WSLは、Windows内でLinuxを実行する事が出来る
仕組みです。最近では、これが更に強化された
WSL2がPreview版でリリースされ、5月頃には正式
リリースされるとのこと。
インストールはこちらで紹介されている手順に
従って行います。
無事にインストール出来て、自分のWindows10の
バージョンとビルドはこちらのようになりました。
4. 日本語入力が出来なくなるバグに遭遇
早速WSLにDockerを入れようとしたところ、
デスクトップが何か変な事に気が付きました。
言語バーが消えていて、これらの設定を何度
見直してもまったく復旧しなくなりました。。
しかも、インストール直後は起動出来たWSL2が
2回目以降はまったく起動しなくなってしまう
始末。
もうどうしようも無くなってしまったので、
泣く泣くWindows 10を再インストールして
なんとか復旧。もう二度とWSLには手を
出さないと心に誓いました。
5. Windows 10 Proへのアップグレード
お金がかかるから、と最初はケチってしましたが、
やはり正常に動く確率が一番高そうなDocker for
Windowsにしようと考え、Windows 10をHome
からProにアップグレードする事にしました。
アップグレードはこちらの手順に従うことで
正常に完了しました。
6. Docker for Windowsをインストール
相当な回り道をして、前述した1の手順で
再度インストール。今度はちゃんと正常に
完了出来ました。長かった。。
7. 動作確認
今度はこちらの記事を参考にDockerの動作確認
を行っていきます。
まずはバージョンの確認です。
PowerShellを開いて、こちらのコマンドを
実行します。
するとこちらのような出力が出てきます。
ちゃんと想定通りに動作しました。
次はこちらのコマンドを実行して、
お試し用のコンテナを起動させます。
こちらのような出力が出て、正常に動作
する事を確認できました。
今度はDocker Composeのバージョンを
確認します。このコマンドを実行します。
このように表示され、正常に確認出来ました。
8. イメージとコンテナの状況を確認
まずこちらのコマンドを実行すると、
作成されているイメージの一覧と、
それぞれの状況を確認する事ができます。
先程作成されたhello-worldのイメージの
状況がこのように表示されます。
次はこちらのコマンドで、コンテナの
状況を確認します。
hello-worldのイメージから起動した
コンテナの状況がこのように表示
されます。既に終了させているので、
StatusはExitedとなっています。
次の予定
想定よりも大幅に時間がかかり、
やっとこさインストールが完了
しました。
次こそはLinux環境の構築という
本来の目的に向かっていきたい
と思います。