Windows Tips

Windows 10 Home のための、Docker Toolbox をインストールして WSL から使う方法

投稿日:2018年7月20日 更新日:

Windows 10 Home に Docker を導入し、WSL を利用してインストールした Ubuntu から使う手順について説明します。

はじめに

Windows 10 Home は Hyper-V という仮想化技術が装備されていませんので、Docker For Windows が使えません。しかし、その代り、Docker Toolbox というツールが用意されており、これを使えば Docker を導入することができます。こちらは、VirtualBox を利用します。

Docker for Windows の導入に関しては、以下のページを参考にしてください。

docker

WSL の docker client から、Docker for Windows の docker daemon を使う手順

2018.07.19

Docker Toolbox の仕組みと WSL からの利用

Docker Toolbox は、VirtualBox を使って Linux仮想マシンを作成します。この仮想マシンには Docker Engine が組み込まれていますので、これを利用するのです。

Docker Engine は、「docker daemon というサーバー側の機能」と、「そのサーバーにコマンドで命令を送るだけの docker client」とに分かれています。大事なのはサーバー側となる docker daemon でして、こちらは Linuxの仮想化技術を使って「イメージ」や「Dockerコンテナ」の作成・管理などを行います。一方、docker client 側は 命令を発行するだけなので、だいたいどんな環境でも大丈夫です。

これを踏まえて今回は、

Linux仮想マシン 内の docker daemon

に対して、

Ubuntu (on WSL) から docker コマンドを発行する
(つまり、docker client として利用する)。

という利用形態を実現しようという話になります。

ちなみに、Ubuntu 内で docker daemon も動かせば Docker Tools 自体必要ないのではないか?と思われるかもしれませんが、残念ながら WSL を利用して動かしている Linuxディストリビューションでは docker daemon の機能はサポートされていません。ここがちゃんとサポートされれば、Docker for Windows も Docker Tools もいらなくなります。(最近、サポートされたという話しもありますが、まだ制限がありますので、もう少しちゃんと対応するまで待った方がよいと思います。)

手順

前提

既に、Microsoft Store から Ubuntu をインストールしていることを前提とします。

WSL の導入手順については以下のページを参考にしてください。

Windows

WSL のシンプルな導入手順(2019年1月版)

2018.05.25
Windows

WSL (Windows Subsystem for Linux) の導入と設定

2017.07.12

1. Docker Toolbox のインストール

Install Docker Toolbox on Windows | Docker Documentation にアクセスし、「Get Docker Toolbox for Windows」リンクをクリックします。

ダウンロードされた DockerToolbox.exe ファイルを実行します。

Docker Toolbox のインストールが始まりますので、進めていきます。

以下の画面では、インストールするソフトウェアを選択しますが、既にインストールされているソフトウェアがあればチェックを外してもよいです。

以下の画面では、基本的にはそのままでよいですが、VirtualBox が既にインストールされている場合は、一番下のチェックは外しておいてよいでしょう。

インストールが終わりました。

デスクトップには、以下のようなショートカットができます。

Kitenmatic というのは、Docker のイメージやコンテナをGUIで管理できるツールです。

ここで、Docker Quickstart Terminal というショートカットを実行します。

すると、いろいろな処理が行われて、最終的に以下のように画面になります。

この時点で、Docker が使えます。

docker version

と入力して実行すれば、クライアント(Client)とサーバー(Server)のバージョンが表示されるはずです。

VirtualBox を起動すると、「default」という名前の仮想マシンが実行中になっています。この中で Docker Engine が動いています。

※ “default” という名前はよくないですね。なぜ、この名前にしたのでしょうか。

2. Ubuntu (on WSL) 側で docker パッケージをインストール

Get Docker CE for Ubuntu | Docker Documentation に書いてある通りに進めると、docker がインストールできます。

ここに関しては、以下のページでも説明していますので、そちらを参考にしてください。

4. WSL 側に docker パッケージをインストールする というところです。

docker

WSL の docker client から、Docker for Windows の docker daemon を使う手順

2018.07.19

3. WSL側から、仮想マシン上の docker daemon に接続するための設定を行う

~/.profile ファイルに以下を記述します。

export DOCKER_HOST=tcp://192.168.99.100:2376 # Linux仮想マシンの IP アドレスと Dockerが使っているポート番号です
export DOCKER_CERT_PATH=/mnt/c/Users/{あなたのユーザー名}/.docker/machine/certs
export DOCKER_TLS_VERIFY=1

「{あなたのユーザー名}」は自分の環境に合わせて変更してください。

使い方

(1) Docker を使いたい時には、VirtualBox 内の default仮想マシンを開始します。

(2) WSL の Ubuntu のターミナルを開いたら、docker コマンドが使えます。コマンドの内部では、Linux仮想マシン内の docker daemon に命令を送信するはずです。

(3) Docker の利用が終わったら、VirtualBox 内の default仮想マシンをシャットダウンします。この場合、下画面のように、「ACPI シャットダウン」を行えば安全にシャットダウンできます。

ちなみに default仮想マシン内のユーザー名/パスワードは以下になっています。

ユーザー名: docker
パスワード: tcuser

おわりに

Windows 10 Home であっても、今回紹介した方法で、わりと普通に Docker が使えます。

Docker はとても便利なツールですので、是非このページを参考にして使ってみてください。

📂-Windows Tips

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Windows

ツールパネルウィンドウが畳まれた状態で Adobe Acrobat Reader DC を起動する

Adobe Acrobat Reader DC を起動した時、右側に表示される「ツールパネルウィンドウ (Tools pane)」が邪魔に感じたことはないでしょうか? ツールパネルウィンドウというのは …

Windows

【Windows 10】ファイル・フォルダ削除時に確認メッセージを表示する

Windows を触っていて、意図せずファイルやフォルダを削除したことはないでしょうか? 私はあります。 通常 ファイル・フォルダを削除するとゴミ箱に残るのでまだよいですが、外付けストレージ内のファイ …

Windows

Windows 10 のプロキシ(サーバー)設定方法

Windows 10 における「プロキシサーバー」の設定方法について説明します。あくまでも プロキシサーバーを利用するクライアント側の設定方法です。プロキシサーバー側の設定方法ではありません。

WSL

WSL (Ubuntu 16.04 TLS) 内で、PHPから MongoDB を操作する環境を作る

WSL (Ubuntu 16.04 TLS) 内で、PHP から MongoDB を操作するための環境を作ります。 「PHP から MongoDB を操作してみる」が目的であるため、ウェブサーバーとし …

Windows

テキストファイルの文字エンコーディングを変更する

テキストファイルの文字エンコーディングを変更する方法について説明しています。