Windows7にDockerをインストールする方法!
本記事ではWindows7にDockerをインストールするでは、BIOS設定・ssh接続や起動させる方法・docker runの操作方法を紹介しています。Windows7のDockerでは、ssh接続・BIOS設定・docker runの操作方法は重要です。
目次
- 1Dockerとは?
- ・仮想環境を構築するソフト
- 2Windows7にDockerをインストールするときの基礎知識
- ・主な用語
- 3Windows7にDockerをインストールする事前作業
- ・事前作業の手順
- 4Windows7にDockerをインストールする方法~Docker For Windows~
- ・Docker For Windowsのインストール手順
- 5Windows7にDockerをインストールする方法~Docker Toolbox~
- ・Docker Toolboxのインストール手順
- 6Windows7にDockerをインストールする方法~起動~
- ・Dockerの起動手順
- ・ssh接続
- 7Windows7にDockerをインストールする方法~動作確認~
- ・動作確認の手順
- 8Windows7にDockerをインストールする方法~操作~
- ・Dockerの操作手順
- ・まとめ
- ・合わせて読みたい!Windows7に関する記事一覧
Dockerとは?
Dockerとは何か知っていますか。Dockerとは、旧dotcloud社(現docker社)が開発したLXCユーティリティのことを指します。LXCとは、OSの仮想化技術の1つです。そして、VMに比べて軽量であることが特徴でコンテナと呼ばれています。
なお、LXCはLinuxOS上でしか動作しません。要するに、Dockerは軽量な仮想マシンを簡単に構築することができるということです。
またインフラを含めたアプリ全体をコンテナという箱に閉じ込めることができますし、コンテナの配布やバージョン管理もできます。
Dockerをインストールする方法では、BIOS設定をはじめ、ssh接続や起動させる方法、docker runの操作方法を紹介しています。なお、ssh接続・BIOS設定・docker runの操作方法は重要なのでしっかり確認しましょう。
仮想環境を構築するソフト
Dockerとは、仮想環境を構築するソフトのことです。OS・ミドルウェア・ファイルシステム全体をイメージという単位で取り扱うことで、全てのやりとりが可能なツールになります。ちなみに、Dockerの特徴は以下のとおりです。
- 仮想環境はコンテナ型と呼ばれるもので、ホストOSを直接アクセスするためオーバーヘッドが少ない
- 環境構築が容易でVirtual Boxも不要
- コンテナは移植性(ポータビリティ)が高く、Dockerさえインストールされていれば、全く同じ環境でアプリを動かせる
- ホストOSからはコンテナは1プロセスとして認識される
また、Dockerをインストールする方法では、BIOS設定をはじめ、ssh接続や起動させる方法、docker runの操作方法を紹介しています。なお、ssh接続・BIOS設定・docker runの操作方法は重要なのでしっかり確認しましょう。
Windows7にDockerをインストールするときの基礎知識
ここではWindows7にDockerをインストールするときの基礎知識をいくつか紹介していきます。また、Dockerをインストールする方法では、BIOS設定をはじめ、ssh接続や起動させる方法、docker runの操作方法を紹介しています。
なお、ssh接続・BIOS設定・docker runの操作方法は重要なのでしっかり確認しましょう。
主な用語
Windows7にDockerをインストールするときの基礎知識として、主な用語を紹介します。以下の7つになります。
- VirtualBox
- docker
- docker compose
- sysVinit/Upstart/Systemd
- Proxy
- Node.js
- npm
VirtualBox
1つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「VirtualBox」です。現在利用しているOS上で、別のOSを実行できる仮想化ソフトウェアのことを指します。
現在利用しているOSをホストOS、もしくはVirtualBox上に構築したOSをゲストOSと呼びます。普段からよく使われるシーンとしては、ホストOSでは導入できないソフトウェア(dockerCE)を利用したい場合です。
また、開発チーム全体で開発環境を統一したい場合、あるいは単にホストOSを汚したく無い場合にも利用します。参考資料としては、「【Laravel超入門】開発環境の構築(VirtualBox + Vagrant + Homestead + Composer)」を参考にしてみてください。
docker
2つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「docker」です。dockerについては以下のとおりです。参考資料としては、「Docker導入のための、コンテナの利点を解説した説得資料」を参考にしてください。
- 軽量な仮想マシンを簡単に構築することができますが、仮想マシンとはそもそもの思想が異なっているので、docckerを利用して構築した環境については明確に「コンテナ」という別の呼び方をする
- これまではサーバを仮想化し、1台のサーバに複数の仮想サーバを入れてサーバを構築していましたが、1仮想サーバにつき1OSなので、増やせば増やすほど動作は重くなる
- dockerは、1コンテナがホストOSとリソース共有をするので、OSとしては1つでOK。そのためこれまでの仮想マシンに比べて非常に軽量
- コンテナ上に作られたアプリケーションは、dockerがインストールされている環境の場合には、どのようなOS上でも動作する(しかしdockerはwindows7にはインストールできない)
- 仮想マシンは電源のONからOFFまでを丸ごと動作するが、コンテナはあくまで起動後の1つ1つのコマンドのみを動作させる(起動部分はホストOSとリソース共有している)
- コマンドの羅列であるので、デプロイもしくはロールバックも容易
- アプリケーションの構成(どのようなサーバがあるのか、あるいはどのようなコマンドをインストールする必要があるのか)についてもすぐにわかる
- コマンドを羅列しているファイルのことを、Dockerfileと呼んでいる
docker compose
3つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「docker compose」です。
dockerによって、1のコンテナを立ち上げるのが容易になりましたが、docker-composeはさらに複数のコンテナを管理することができます。
コンテナごとにDockerfileが存在することで、そのDockerfileからコンテナを立ち上げる動作をファイルに記載できるのです。各コンテナを起動する場合に、どのようなオプションを引数として渡していたかを一元管理することができます。
なお、各コンテナの起動情報を記載するファイルのことをdocker-compose.ymlと呼びますので覚えておきましょう。参考資料としては、「Docker compose ことはじめハンズオン」を参考にしてみてください。
sysVinit/Upstart/Systemd
4つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「sysVinit/Upstart/Systemd」です。
Linuxを起動した際に立ち上がったデーモン(メモリに常駐して様々な機能を提供する)プロセスを実際に処理するための機能になります。
また、sysVnit⇒UpstartからSystemdへと発展してきました。現在ではSystemdが主流だと言われています。ただ、意図的に使い分けるためにインストールが必要になることはありません。通常は、Ubuntuをインストールすると全ての機能が入っているのです。
なお問題が生じる例としては、sysVnit, Upstartが導入された環境で、あるソフトウェアのプロキシ設定がどこかに記されていて、アプリケーションが動作していた場合における現象を紹介します。
まず、Ubuntuのアップデートを行うことでSystemdが導入されると、SystemdとsysVinit,やUpstartはプロキシ設定を読みに行く先が異なるので、別のソフトウェア構成ファイルにプロキシ設定を書く必要が出てきます。
参考資料としては、「いまだにsysvinitの手癖が抜けない人のためのsystemd」を参考にしてみてください。
Proxy
5つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「Proxy」です。Proxyは、コンピュータからWebサーバにアクセスする場合に中継してくれるサーバのことを指します。
Webサーバにアクセスする場合に、コンピュータの「代理」でWebサーバにアクセスしてから、Webサーバの「代理」でコンピュータにデータを送信する流れになります。データのフィルタリング・キャッシュ・アクセス記録などの機能を持つ場合もあるでしょう。
上記の機能によりセキュリティ機能が向上するので、企業内で外部ネットワークにアクセスする場合には、基本的にはProxyサーバを介するようなネットワーク構成になっています。
参考資料としては、「プロキシサーバ(Proxy Server)とは」を参考にしてください。
Node.js
6つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「Node.js」です。
Node.jsは、サーバサイドでJavaScriptを実行できるようにしてくれるプラットフォームのことを指します。node xxx.jsコマンドでxxx.jsのJavaScriptコマンドを実行してくれる機能です。
Node.jsという名前から「サーバサイドJavaScriptのこと」だと言われていますが、あくまでサーバサイドで、JavaScriptを動かすことを可能にしたプラットフォームのことを指します。
また、プログラム実行で一番時間のかかる「入出力待ち」の時間を効率的に利用して、入出力待ちが起きている間もプログラムをブロックしない仕組みである、ノンブロッキングI/Oという仕組みに適応しています。参考資料は、「Node.jsとは何か」です。
npm
7つ目に紹介するWindows7にDockerをインストールするときの基礎知識おける主な用語は、「npm」です。npmとはモジュール管理ツールのことを指します。Node.jsで利用するモジュールをインストール/アンインストールできます。
また、自分が作成したモジュールをNode.jsモジュールとして公開することも可能で、他人がnpmを利用して自分の作成したモジュールをインストールすることもできます。参考資料としては、「npmでnode.jsのpackageを管理する」を参考にしてみてください。
Windows7にDockerをインストールする事前作業
続いて紹介するのは、Windows7にDockerをインストールする事前作業です。以下で事前作業の手順を解説します。Dockerをインストールする方法では、BIOS設定をはじめ、ssh接続や起動させる方法、docker runの操作方法を紹介しています。
また、ssh接続・BIOS設定・docker runの操作方法は重要なのでしっかり確認して参考にしてください。
事前作業の手順
それではWindows7にDockerをインストールする事前作業の手順を見ていきましょう。
BIOSの設定を変更する
Windows7にDockerをインストールする事前作業は、「BIOSの仮想化支援機構を有効にしておく」ことです。まずはBIOSからCPUを設定し、intel virtualization technologyを設定していきます。
もしも最初から有効になっているのであれば問題ありません。また、VirtualBoxを使う前の事前準備を設定しない場合では、後続作業でエラーになるでしょう。
Windows7にDockerをインストールする方法~Docker For Windows~
次はWindows7にDockerをインストールする方法を紹介します。Docker For Windowsに関して深掘りしていきましょう。Windows ユーザは、Docker ツールボックス(Toolbox)を使うことで、 Dockerのソフトウェアをインストールできるのです。
なお、Dockerツールボックスには、以下のDockerツール群が入っていますので確認していきましょう
- Docker CLI クライアントは Docker Engine(エンジン)でコンテナやイメージを作成
- Docker Machine(マシン)は Windows 端末から Docker Engine に命令
- Docker Compose(コンポーズ)は docker-compose コマンドを実行
- Kitematic(カイトマティック)は Docker の GUI
- Docker QuickStart(クイックスタート)は Docker コマンドライン環境を設定済みのシェル
- Oracle VM VirtualBox
Docker Engine デーモンは、Linux特有のkernel機能を使用するので、WindowsではDocker Engineを直接操作できないのです。その代わりにdocker-machineコマンドで自分のマシン上に小さなLinux仮想マシンを作成して接続します。
Docker For Windowsのインストール手順
Docker For Windowsのインストール手順ではまず、Dockerが正しく動作するかどうかを確認するために、Hello Worldをして見ましょう。
Dockerのバージョンを確認
次に、インストールしたDockerのバージョンを確認するために上の画像に表示されているコマンドを実行してください。
インストールしたDockerのバージョンを確認したら、Dockerの実行環境を確認しましょう。
Dockerの実行環境を確認したら、Dockerのディスク利用状況を確認していきましょう。以上の作業が終わりましたら、以下のリンクからDocker For Windowsをインストールしてください。
Windows7にDockerをインストールする方法~Docker Toolbox~
ここではWindows7にDockerをインストールする方法として、Docker Toolboxに関して紹介していきます。Docker Toolbox ソフトウェアと、便利なアプリケーションをインストールします。
マシン上に以下のソフトウェアをインストールするので確認していきましょう。
- Windows 用 Docker クライアント
- Docker Toolbox 管理ツールと ISO(マシン・イメージ)
- Oracle VM VirtualBox
- Git MSYS-git UNIX ツール
すでに古いバージョンのVirtualBoxをインストール済みの場合には、Docker Toolboxインストーラで再インストールしてはいけません。新しいバージョンをインストールするので、不整合が発生する可能性があるでしょう。
Docker Toolboxのインストール手順
まずはDocker Toolbox のページに移動し、インストーラのダウンロード先をクリックしてください。インストーラをダブル・クリックして、Docker Toolbox をインストールしましょう。
そしてインストーラは「Setup - Docker Toolbox」ダイアログを起動します。
続いてWindows セキュリティのダイアログが表示されたら、プログラムによる変更を許可してください。そうすると、システム上で Windows用のDocker Toolboxセットアップ用ウィザードが表示されるでしょう。
全てをデフォルトにするには Next を押し続け、インストールを進め、インストーラをデフォルトで実行した場合には、全てのインストールが終わるまで数分かかるので注意しましょう。
そしてWindows セキュリティ・ダイアログが変更を加える確認画面を表示したら、インストーラの設定に必要なので許可をしてください。
作業後は、インストールが完了したと画面に表示されますので確認しましょう。「View Shortcuts in File Explorer」(ファイル・エクスプローラでショートカットを表示)のチェックを外して、Finishをクリックして完了です。
インストールを確認する
インストーラはアプリケーション・フォルダにDocker Toolboxと VirtualBoxのショートカットを作成しています。ここではDocker Toolboxを実行し、簡単な Docker コマンドを実行する流れを紹介します。
まずはデスクトップ上のDocker Toolboxアイコンを探し、アイコンをクリックして、Docker Toolboxのターミナルを起動しましょう。そして、システムがユーザ・アカウントの制御に関する画面を表示します。
次に、VirtualBoxがコンピュータ対する変更を確認してきたら「はい」をクリックしてください。ターミナルでは、Docker ツールボックスがセットアップに関する情報を表示されます。そこで作業が終わればターミナル上に $ プロンプトが表示されるでしょう。
続いて、標準の Windows コマンドライン・プロンプトに変わります。そして、特別な bash 環境をターミナル上で実行しますが、そこでDockerにはbash環境が必要になります。次に、ターミナル上にある $ プロンプトの横をマウスでクリックしましょう。
プロンプトとは一般的に $ ドル記号で、このプロンプトの後にあるコマンドライン上でコマンドを入力してください。なお、コマンドライン上ではカーソルは | として表示されるでしょう。そして、コマンドを入力した後は、常にリターン・キーをクリックします。
Windows7にDockerをインストールする方法~起動~
ここではWindows7にDockerをインストールする方法として、「起動」する方法を紹介します。Dockerをインストールする方法では、BIOS設定をはじめ、ssh接続や起動させる方法、docker runの操作方法を紹介しています。
なお、ssh接続・BIOS設定・docker runの操作方法は重要なのでしっかり確認しましょう。
Dockerの起動手順
まずは、デスクトップに作成されたDocker Quickstart Terminalアイコンを実行してください。しばらく時間がかかった後、仮想環境が作成され起動するでしょう。しかし、画像でもわかるように下記の様なエラーが発生していましました。
- Looks like something went wrong in step 'Finalize' ... Please any key to continue...
そこで対応のために下記のファイルを修正すると改善されます。
- C:\Program Files\Docker Toolbox\start.sh
ssh接続
まずはteratermで接続してください。なお、デフォルトではIPは192.168.99.100になっています。
そして、デフォルトではユーザ名/パスワードはdocker/tcuserになっていますので確認しましょう。
Windows7にDockerをインストールする方法~動作確認~
続いてWindows7にDockerをインストールする方法として、動作確認について紹介します。
動作確認の手順
Dockerの動作確認では、Dockerが正しく動作するかどうかを確認するために、Hello Worldをしてみましょう。Dockerイメージをもとに、コンテナを作成して実行し、作成したコンテナ内でHello Worldを表示させるサンプル方式です。
Windows7にDockerをインストールする方法~操作~
最後に紹介するWindows7にDockerをインストールする方法は、「操作」についてです。Dockerの操作手順を紹介していきましょう。
Dockerの操作手順
Dockerの操作手順では以下について深掘りしていきます。
- docker run
- docker images
- docker search
- docker pull
- docker inspect
- docker tag
- docker rmi
docker run
まずはdocker runコマンドで、CentOSのイメージを起動します。そして、Hello Dockerとechoしてみます。なお、初回はDockerイメージがダウンロードされるので少し時間がかかるでしょう。
ダウンロードした後は、echoコマンドが実行されてHello Dockerが表示されるので問題ありません。
docker images
docker imagesコマンドでダウンロードすることでイメージの一覧が表示されますので非常に簡単です。
docker search
まずは、docker searchコマンドでDocker Hibに公開されているdockerイメージを検索しましょう。そして、Apache httpサーバを検索してみてください。
次にdocker searchコマンドでhttpdを検索することで、部分マッチでたくさんヒットしします。右側のOFFICIALと付いているのが公式のDockerイメージになりますので、確認しましょう。
docker pull
まずは、docker pullコマンドでDocker Hubからイメージをダウンロードしていきましょう。それから、イメージ名にの後ろにコロンをつけてバージョンを指定できます。
docker inspect
docker inspectコマンドでは、dockerイメージの詳細を確認でき、json形式で表示されますので確認してください。
docker tag
docker tagコマンドでは、dockerイメージにタグ名を付けることが可能です。httpd:2.4にtagを付けてみましょう。
docker rmi
docker rmiコマンドでは、ダウンロードしたdockerイメージを削除してください。
まとめ
今回の記事ではWindows7にDockerをインストールする方法!というテーマで執筆しました。Dockerとは何かまず説明しています。続いて、Windows7にDockerをインストールするときの基礎知識を紹介しました。
また、Windows7にDockerをインストールする事前作業をはじめ、Windows7にDockerをインストールする方法をDocker For WindowsとDocker Toolboxに分けて解説しています。