2018/11/09

Docker EE for Windows Server 18.09.0 (Docker Enterprise 2.1)

Docker EE for Windows Server バージョン 18.09 (Docker Enterprise 2.1) がリリースされました。リリースノートにはまだないけど、バージョン 17.06 (Docker Enterprise 2.0) の最新バージョン 17.06.2-ee-17 (2018-10-25) も利用可能になってました。あと、バージョン 18.x 系は Windows Server 2016 では動かないと思ってたけど、勘違いでした。動きました(→)。

最新のドキュメントにも "Docker EE for Windows requires Windows Server 2016 or later" って書いてます(ZDNet Japan さんの記事では 1709、1803、2019 をサポートって書いてますが間違ってますね。Windows Server 2016 以降、つまり LTSC 2016/2019、SAC 1709/1803/1809 をサポート)。


Docker Engine release notes
18.09 (2018-11-08)
https://docs.docker.com/engine/release-notes/

Docker Enterprise 2.1 の公式アナウンス
Introducing Docker Enterprise 2.1 – Advancing Our Container Platform Leadership
https://blog.docker.com/2018/11/introducing-docker-enterprise-2-1-advancing-our-container-platform-leadership/
Introducing Docker Engine 18.09
https://blog.docker.com/2018/11/introducing-docker-engine-18-09/

Docker Enterprise 2.1 のリリースあわせ、こんなプレス リリースも。

Docker Launches New Program for Migrating Legacy Windows Server 2008 Applications to Alleviate End of Support Issues
https://www.docker.com/docker-news-and-press/docker-launches-new-program-migrating-legacy-windows-server-2008-applications


初期バージョンは 18.09.0。今回から -ee- は付かないの?






アップデート(またはインストール)時に「警告: Cannot verify the file SHA 256. Deleting the file.」と出てしまうことも..(以下、オンプレの Windows Server 2019、ダウンロードに時間がかかるとこのエラーが出るような気がする)


こうなってしまうと現在のインストール(docker デーモンもクライアント バイナリも環境変数も)はアンインストールされちゃっているので(pull 済みイメージや作成済みコンテナーは無事のはず)、Install Docker Enterprise Edition for Windows Server の Use a script to install Docker EE を参考に手動でインストール。この方法で、Windows Server 2016、Windows Server, version 1803、Windows Server 2019 をアップデートできました。

# zip ファイルの名前と URI は $env:Userprofile\AppData\Local\Temp\1\DockerMsftProvider\DockerDefault_DockerSearchIndex.json で確認してね。
PS> invoke-webrequest -UseBasicparsing -Outfile docker-18-09-0.zip https://dockermsft.blob.core.windows.net/dockercontainer/docker-18-09-0.zip
#デーモンの停止↓は、Install-Package が失敗したときに削除されちゃっているのでエラーになるはず。
PS> Stop-Service docker

PS> Expand-Archive docker-18-09-0.zip -DestinationPath $Env:ProgramFiles -Force
PS> Remove-Item -Force docker-18-09-0.zip
#アップデートなので以下↓は省略
#$null = Install-WindowsFeature containers
PS> $env:path += ";$env:ProgramFiles\docker"
PS> $newPath = "$env:ProgramFiles\docker;" + [Environment]::GetEnvironmentVariable("PATH", [EnvironmentVariableTarget]::Machine)
PS> [Environment]::SetEnvironmentVariable("PATH", $newPath, [EnvironmentVariableTarget]::Machine)
PS> dockerd --register-service
PS> Start-Service docker


すんなりアップデートできるやつはできるんだけど... (以下、Azure 上の Windows Server 2016)
・・・


ところで、Windows Server, version 1709 以降でサポートの LCOW (Linux Containers on Windows)について。

Docker EE バージョン 18.09 の Fixes for Docker Engine EE and CE に LCOW のことが書いてあったので、C:\ProgramData\docker\config\daemon.json に { "experimantal":true } って書いて experimental 機能を有効化してみた。docker pull や run で --platform=linux が使えるようになったけど、utility VM が C:\Program Files\Linux Containers\kernel にないって言われました。

Linuxkit の Releaze.zip (https://github.com/linuxkit/linuxkit/lcow) を展開して入れてみてもダメ(kernel というファイル名ではないから?)。LCOW の評価は依然として master-dockerproject のビルド or Docker for Windows の experimental 機能でないとダメみたい。

0 件のコメント: