メモ > サーバ > 各論: Docker > 環境構築: Docker Toolbox
環境構築: Docker Toolbox
※WSL2を使うのが無難
Windows10にDockerでLAMP環境を構築する - Qiita
https://qiita.com/kamonamban/items/e0150a2a7a4d28db10c4
Windows10マシンにDocker Toolbox を入れて個人用の開発環境を作る - Qiita
https://qiita.com/osuo/items/99a2b7413ce75f8217be
Docker Toolboxのインストール:Windows編 - Qiita
https://qiita.com/maemori/items/52b1639fba4b1e68fccd
Docker Toolbox だと、Windows10 Home でも使える
Docker Toolbox は Docker 環境を簡単に構築するためのインストーラらしい
■インストール
Docker Toolboxを使ってみる | GWT Center
https://www.gwtcenter.com/using-docker-toolbox
を参考にインストール
まずは以下からDockerの最新版(DockerToolbox-19.03.1.exe)をダウンロード&インストール
Releases - docker/toolbox
https://github.com/docker/toolbox/releases
Welcome画面が表示されるので、確認してNext
インストール先が表示されるので、確認してNext
コンポーネントの追加が表示されるので、確認してNext
追加作業について表示されるので、「Install VirtualBox with NDIS5 driver[default NDIS6]」にチェックを入れてNext
インストール内容を確認してInstall
Finishをクリックして完了
Docker Toolboxのインストール:Windows編 - Qiita
https://qiita.com/maemori/items/52b1639fba4b1e68fccd
インストールは主にこのページを参考にした
■インストールエラーメモ(2020年6月)
あらかじめVirtualBoxをインストールしていても、Dockerインストール時に再インストールされる
DockerToolbox-19.03.1.exe をインストール。インストール時、「Install VirtualBox with NDIS5 driver[default NDIS6]」にチェックを入れて進める
Docker Quickstart Terminal の起動に失敗するのでVirtualBoxのみアンイストール
VirtualBox-5.2.2-119230-Win.exe をインストール
vagrant_2.2.9_x86_64.msi をインストール
これでDockerもVagrantも使えるようになった
すでに起動させていたVagrantを起動できなくなった場合、
以下のように、プラグインをインストールしなおせば起動できた
>vagrant plugin repair
>vagrant plugin expunge --reinstall
Continue? [N]: Y … 「Y」を入力してEnter
>vagrant plugin update
>vagrant box list
■インストールエラーメモ(2019年8月)
あらかじめVirtualBox6.0をインストールしていたが、Docker起動時に以下のエラーになった
Error setting up host only network on machine start: The host-only adapter we just created is not visible. This is a well known VirtualBox bug. You might want to uninstall it and reinstall at least version 5.0.12 that is is supposed to fix this issue
Looks like something went wrong in step ´Checking status on default´... Press any key to continue...
5.0.12 なら動作するようだが、いったんVer5の最終版である VirtualBox-6.0.10-132072-Win.exe をダウンロード&インストール
そうするとDockerを起動できるようになった。Vagrantも起動できる
■インストールエラーメモ(2018年)
インストールが完了するとVirtualBoxが5.2になっていた
バージョン問題でVagrantが起動しなくなった
Dockerも起動途中でエラーになる
VirtualBoxを5.1に戻すと、VagrantもDockerも起動するようになった
(ただしその後のWindowsアップデートの影響で、5.1では動かなくなったので5.2に上げた
が、環境によっては 5.1.30 でないと動かない。などがあり謎)
Kitematic (Alpha)
はエラーになって起動しなかった(DockerのGUI)
起動後、もともとインストールしていた Oracle VM VirtualBox が起動しなくなった
…が、Windowsを再起動すると、再度起動するようになった
いったん放置
■起動
Docker Quickstart Terminal を起動
コンソールが開いて処理が始まった
数分で完了し、コンソールが入力待ち状態になった
この時点で、再度「Oracle VM VirtualBox」を起動させると、
新たに「default」サーバが追加されて起動中になっていた
「Dockerを起動=VirtualBoxでDocker用の仮想マシンを起動」となっているみたい
$ docker container run hello-world
Unable to find image 'hello-world:latest' locally … 初回実行時はイメージがダウンロードされる
latest: Pulling from library/hello-world
b04784fba78d: Pull complete
Digest: sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f
Status: Downloaded newer image for hello-world:latest
Hello from Docker! … 2回目からはここからの表示となる
This message shows that your installation appears to be working correctly.
〜略〜
動作確認コマンドを試すと、正常に動いているみたい
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 725dcfab7d63 2 weeks ago 1.84kB
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.100:2376 v17.06.0-ce
イメージとマシンが追加されている
■終了
「Oracle VM VirtualBox」を起動させ、「default」サーバを右クリックして「閉じる → ACPI シャットダウン」とするといいみたい
「閉じる → 電源オフ」でも終了できるが、これは強制終了のようなものかもしれない
■同一ネットワークの他端末からのブラウザアクセス
※XAMPPやSkypeが80番ポートを使っている場合、あらかじめソフトを終了させておく
Docker Quickstart Terminal から以下を実行することにより、
SSHのポートフォワーディングでネットワーク上にポートを公開する
(DockerのIPアドレスが 192.168.99.100 であるとする)
$ ssh -fNCL 0.0.0.0:80:localhost:80 docker@192.168.99.100 … SSHをバックグラウンドで起動
The authenticity of host '192.168.99.100 (192.168.99.100)' can't be established.
ECDSA key fingerprint is SHA256:MU512WSVjrCJ8FHD45UtuOjzAB0UJeaG5zxOMCojEK8.
Are you sure you want to continue connecting (yes/no)? … 「yes」を入力(初回のみ)
Warning: Permanently added '192.168.99.100' (ECDSA) to the list of known hosts.
docker@192.168.99.100's password: … 「tcuser」を入力
これで自身からは
http://192.168.99.100/
だけでなく、
http://127.0.0.1/
http://localhost/
でもDockerにアクセスできるようになる
コマンドプロンプトから以下を実行
(自身のPCのIPアドレスを調べる)
>ipconfig
IPv4 アドレス . . . . . . . . . . . .: 192.168.1.6
自身のIPアドレス
http://192.168.1.6/
でもDockerにアクセスできることを確認する
この状態なら、同一ネットワークの他端末からのブラウザアクセスが可能
バックグラウンドで起動しているSSHを終了させる場合、以下のようにする
$ ps … SSHを確認
PID PPID PGID WINPID TTY UID STIME COMMAND
10220 8708 10220 6160 cons0 197609 14:49:45 /usr/bin/ps
8708 1 8708 11020 cons0 197609 14:35:13 /usr/bin/bash
5388 1 5388 5388 ? 197609 14:45:28 /usr/bin/ssh
$ kill 5388 … SSHを終了
Windows - WindowsのDockerのコンテナに外部からアクセスしたい。(54259)|teratail
https://teratail.com/questions/54259