しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Docker for Windows Server 2016 のアップデートを行う方法

Windows Server 2016 への Docker インストールは、PowerShell を使って結構簡単に出来るのですが、アップデート方法をこれまであまり見たことがありませんでした。

何回か書いた気はしますが、インストールは以下のコマンドを実行するだけです。

Install-Module -Name DockerMsftProvider -Force
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
Restart-Computer -Force

自宅にある検証マシンに入っている Docker は 1.13 と古いものだったので、簡単にアップデートする方法がないか少し探してみると、PowerShell を使って簡単にアップデート出来るようでした。

ドキュメントの分かりにくい部分にアップデート方法が書いてありました。

Tip: If you want to update Docker later:

  • Check the installed version with Get-Package -Name Docker -ProviderName DockerMsftProvider
  • Find the current version with Find-Package -Name Docker -ProviderName DockerMsftProvider
  • When you're ready, upgrade with Install-Package -Name Docker -ProviderName DockerMsftProvider -Update -Force, followed by Start-Service Docker
Windows Containers on Windows Server | Microsoft Docs

実質、実行するコマンドは以下の 1 行だけです。インストールの時と異なり、Update スイッチが追加になっているだけです。コマンドレット名が分かりにくいですが、これでアップデートも行えるみたいです。

Install-Package -Name docker -ProviderName DockerMsftProvider -Verbose -Update

実際に自宅の検証マシンに対して Docker のアップデートを行ってみました。

Docker 1.13 へのアップデートは半分手動で行った記憶がありますが、関係なく PowerShell でアップデートが出来るようです。これはかなり簡単でした。

f:id:shiba-yan:20170531010031p:plain

アップデートが完了した後は dockerd が立ち上がっていなかったですが、Windows Update のついでに再起動を行ってみると無事に立ち上がってきました。

docker version を実行してみると、ちゃんと最新の 17.03.1-ee-3 になっていることが確認できますね。

f:id:shiba-yan:20170531010246p:plain

Windows Server 2016 では追加コスト無しで EE 版が使えるようになってるので、自然とこのバージョンが落ちてくるようです。手順をすぐに忘れそうなので、メモ代わりに残しておきます。