1. はじめに
WindowsServerのコンテナを試してみたいと思って、Windows10 Proの20H2の環境で試してみたのですが、 「ERROR: image operating system “windows” cannot be used on this platform」というエラーが表示されました・・・ https://hub.docker.com/_/microsoft-windows-servercore
エラーの原因を調べたところ、どうもWindowsベースのコンテナはWindowsServer2016上でしか動かないという事らしいです。
そこで、WindowsServer2-16の評価版を使ってHyper-V上に仮想マシンとして作成してからWindowsコンテナを立ててみようと思います。
2. WindowsServer2016評価版をHyper-V上に構築
こちらの手順でHyper-V上に仮想マシンとしてWindowsServer2016評価版を構築しました。
https://syachiku.net/hyper-v-windowsserver2016-eval/
3. DockerEEをインストール
WindowsServerにはDockerのEnterprise Editionをインストールする必要があります。 インストーラーをダウンロードするのではなくPowerShell経由でインストールします。
基本的には以前に書いた以下の記事の通りにすすめますが、今回はLinuxコンテナは利用しないのでHyper-Vのインストールは不要です。
// はじめに利用するSSLのバージョンを変更する
> [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
// MsftProviderをインストール
> Install-Module DockerMsftProvider -Force
// Dockerをインストール
> Install-Package Docker -ProviderName DockerMsftProvider -Force
// 一度再起動
> Restart-Computer
// dockerを起動
> Start-Service docker
// バージョン確認
> docker version
Client: Mirantis Container Runtime
Version: 20.10.6
API version: 1.41
Go version: go1.13.15
Git commit: b3766ff
Built: 06/29/2021 17:14:16
OS/Arch: windows/amd64
Context: default
Experimental: true
Server: Mirantis Container Runtime
Engine:
Version: 20.10.6
API version: 1.41 (minimum version 1.24)
Go version: go1.13.15
Git commit: a3dc69e6b9
Built: 06/29/2021 17:12:49
OS/Arch: windows/amd64
Experimental: false
4. Docker Composeをインストール(Windowsコンテナには利用不可でした)
※こちらインストールしてはみたもののdocker-composeではLinuxコンテナの操作になるようで以下のエラーが表示されて利用することができませんでした。参考までに記載しておきます。
PS C:\Users\Administrator\Desktop\docker> docker-compose up -d
Creating network "docker_default" with the default driver
ERROR: hns failed with error : パラメーターが間違っています。
以下のサイトにある手順にしたがってDocker Composeをインストールします。
// はじめに利用するSSLのバージョンを変更する
> [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
// DockerComposeのインストール
> Invoke-WebRequest "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Windows-x86_64.exe" -UseBasicParsing -OutFile $Env:ProgramFiles\Docker\docker-compose.exe
// 確認
> docker-compose --version
docker-compose version 1.29.2, build 5becea4c
5. WindowServercoreコンテナイメージの取得
Windows Servercoreのコンテナイメージを取得してから起動します。ServerCoreのイメージ12GBとかなりサイズが大きくて時間がかかります。
> docker run mcr.microsoft.com/windows/servercore:1607-amd64
> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/windows/servercore 1607-amd64 c42b753c0b5c 11 days ago 12GB
Dockerのオススメ勉強方法
私がオススメするDocker初心者向けの最初に購入すべき書籍は「さわって学ぶクラウドインフラ docker基礎からのコンテナ構築」です。
さわって学ぶクラウドインフラ docker基礎からのコンテナ構築
本書ではDockerの基本的な概念などの座学ももちろんありますが、実際に、Dockerのインストール方法やWebサーバーをコンテナで構築するハンズオンを通じて学習することができるため、特に初心者の方はは分かりやすい内容となっています。
今回は以上となります。
コメント