windows:docker

Docker - 仮想化コンテナ

Docker Logo
Docker (ドッカー) は、コンテナと呼ばれるOSレベルの仮想化(英語版)環境を提供するオープンソースソフトウェアである。VMware 製品などの完全仮想化を行うハイパーバイザ型製品と比べて、ディスク使用量は少なく、仮想環境(インスタンス) 作成や起動は速く、性能劣化がほとんどないという利点を持つ。
Docker - Wikiwand より

本家: Docker: Accelerated Container Application Development
ソースコード: GitHub - docker/docker-ce: Docker CE
ドキュメント: Docker Docs - docs.docker.com 翻訳
  Docker ドキュメント日本語化プロジェクト — Docker-docs-ja 24.0 ドキュメント

Docker - 仮想化コンテナ (Linux)

  1. Docker Desktop for Windows をクリックして Docker Desktop Installer.exe (573MB) をダウンロードする。

公式: Install Docker Desktop on Windows | Docker Docs 翻訳
ダウンロードした Docker Desktop Installer.exe 実行して Docker Desktop for Windows をインストールする。
インストーラで「Use WSL 2 instead of Hyper-V」(Hyper-V の代わりに WSL 2 を使用する)オプションがオンになっていることを確認してインストールする。

Docker は Linux のコンテナ仮想化技術を利用するので、Linux Kernel が必要である。
Windows上 では WSL2 を利用して、lightweight utility virtual machine (軽量ユーティリティ仮想マシン) で Microsoft のカスタム Linux Kernel を利用して Docker エンジンを実行する。

Docker Desktop Installer 001Docker Desktop Installer 002
Docker Desktop Installer 003Docker Desktop Installer 004
Docker Desktop Installer 005Docker Desktop Installer 006
Docker Desktop Installer 007

インストールが完了したら再起動すると WSL2 が有効化されrる。
Docker Desktopを最初に起動するときに、WSL2 に docker-desktop 環境が作成される。

~ $ wsl -l -v

  NAME              STATE           VERSION
  docker-desktop    Installing      2

☢️古い資料です (Obsolete)☢️

PowerShell を「管理者として実行」する。

PS > Get-WindowsOptionalFeature -Online | ? FeatureName -Match "Hyper-V"
FeatureName : Microsoft-Hyper-V-All
State       : Disabled

FeatureName : Microsoft-Hyper-V
State       : Disabled

FeatureName : Microsoft-Hyper-V-Tools-All
State       : Disabled

FeatureName : Microsoft-Hyper-V-Management-PowerShell
State       : Disabled

FeatureName : Microsoft-Hyper-V-Hypervisor
State       : Disabled

FeatureName : Microsoft-Hyper-V-Services
State       : Disabled

FeatureName : Microsoft-Hyper-V-Management-Clients
State       : Disabled
PS > Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
この操作を完了するために、今すぐコンピューターを再起動しますか?
[Y] Yes  [N] No  [?] ヘルプ (既定値は "Y"): <- Enter で一旦再起動する
PS > Get-WindowsOptionalFeature -Online | ? FeatureName -Match "Hyper-V"
FeatureName : Microsoft-Hyper-V-All
State       : Enabled

FeatureName : Microsoft-Hyper-V
State       : Enabled

FeatureName : Microsoft-Hyper-V-Tools-All
State       : Enabled

FeatureName : Microsoft-Hyper-V-Management-PowerShell
State       : Enabled

FeatureName : Microsoft-Hyper-V-Hypervisor
State       : Enabled

FeatureName : Microsoft-Hyper-V-Services
State       : Enabled

FeatureName : Microsoft-Hyper-V-Management-Clients
State       : Enabled

ダウンロードした Docker for Windows Installer.exe を実行してインストーラーの指示に従う。
インストールが完了したら、一旦ログアウトする。

コマンドプロンプトより以下を実行する。

> docker version
Client: Docker Engine - Community
 Version:           19.03.1
 API version:       1.40
 Go version:        go1.12.5
 Git commit:        74b1e89
 Built:             Thu Jul 25 21:17:08 2019
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.1
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.5
  Git commit:       74b1e89
  Built:            Thu Jul 25 21:17:52 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.6
  GitCommit:        894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc:
  Version:          1.0.0-rc8
  GitCommit:        425e105d5a03fabd737a126ad93d62a9eeede87f
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

Docker Hub でコンテナを Search して、以下のコマンドでインストールする。
または、以下の search コマンドを実行する。

> docker search pyodide
NAME                 DESCRIPTION         STARS               OFFICIAL            AUTOMATED
iodide/pyodide-env                       2
rthz/pyodide-env                         0

pull コマンドでダウンロードする。

> docker pull iodide/pyodide-env

latest tag が存在しない場合は以下のようなエラーになる。

> docker pull iodide/pyodide-env
Using default tag: latest
Error response from daemon: manifest for iodide/pyodide-env:latest not found: manifest unknown: manifest unknown

その場合は iodide/pyodide-env コンテナの Tags を確認して、存在する tag を指定して pull し直す。

> docker pull iodide/pyodide-env:0.3.1
> docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
iodide/pyodide-env   0.3.1               a55c53bc2d75        9 months ago        2.35GB
> docker run -p 8000:8000 -it --rm -v C:\projects/pyodide:/src --user root iodide/pyodide-env:0.3.1 /bin/bash
  • windows/docker.txt
  • 最終更新: 2023/10/06 11:55
  • by ともやん