べにやまぶろぐ

技術寄りの話を書くつもり

Docker で『please update docker』 と怒られるときは boot2docker download を忘れずに

バージョン : Docker 0.10.0

Docker もいよいよ 1.0.0 になるかと思いきや 0.10.0 というリリースでじわりじわりという感じですが、以前書いた Docker build に失敗するのでバージョンを戻したい (0.9.0 => 0.8.1) (※ 2014/04/18 追記あり) - べにやまぶろぐ についてどうなったかなと思って brew upgrade でアップデートしてみました。

結論としてはやっぱり docker build した際に Error: Multipart upload for build is no longer supported. Please upgrade your docker client. となるし、バージョンも

$ docker version
Client version: 0.10.0
Client API version: 1.10
Go version (client): go1.2.1
Git commit (client): dc9c28f
Server version: 0.9.0
Git commit (server): 2b3fdf2
Go version (server): go1.2.1
Last stable version: 0.10.0, please update docker

相変わらず update しろと言われ続けるわけです。

そろそろ同じ問題で困っている人いるだろと思って調べたところ、

Error: Multipart upload for build is no longer supported. Please upgrade your docker client. · Issue #4652 · moby/moby · GitHub

という投稿を発見。どうも brew upgrade boot2docker で更新されるのはコマンドだけで boot2docker-vm 自体を更新するには別途 boot2docker download を打たないといけないっぽい。。。

で、改めて調べてみたらちゃんと公式ドキュメントに書いてありました。

Redirecting…

To upgrade an initialised VM, you can use the following 3 commands. Your persistence disk will not be changed, so you won’t lose your images and containers:

./boot2docker stop
./boot2docker download
./boot2docker start

これを行った後に再度バージョンを確認すると

$ docker version
Client version: 0.10.0
Client API version: 1.10
Go version (client): go1.2.1
Git commit (client): dc9c28f
Server version: 0.10.0
Server API version: 1.10
Git commit (server): dc9c28f
Go version (server): go1.2.1
Last stable version: 0.10.0

となりちゃんとバージョンが上がり警告も消えました。docker build もようやく通るようになり問題解決、すっきり docker を使えるようになりました。

Docker のバージョンが上がった際は docker と boot2docker のアップデートだけでなく boot2docker-vm のダウンロードを忘れずにするのが良さそうです。