Docker のバージョンアップをすると 起動していたコンテナ、イメージはどうなる?
Docker のバージョンアップをしようと思っているのですが
既に起動しているDockerで動いている コンテナとかどうなるんだろう?
無くならないかとっても心配なので試してみることにしました。
まずは環境情報。
root@ubuntu:~# cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=14.10 DISTRIB_CODENAME=utopic DISTRIB_DESCRIPTION="Ubuntu 14.10" root@ubuntu:~# docker version Client version: 1.2.0 Client API version: 1.14 Go version (client): go1.2.1 Git commit (client): fa7b24f OS/Arch (client): linux/amd64 Server version: 1.2.0 Server API version: 1.14 Go version (server): go1.2.1 Git commit (server): fa7b24f
イメージをいくつかpullして実行します。
3つくらい立ててみましょう。
root@ubuntu:~# docker run -d -P moremagic/centos7-sshd \ && docker run -d -P moremagic/centos7-sshd \ && docker run -d -P moremagic/centos7-sshd c5cec9463fec931a9ad5c5a10748524a075c4e0815c5a27f14d3fb76a8a0a43e be5afb74a7145da1f6191525ffc1386bc44de6084ec6700e9419cf70fc992fb1 0600ae85f83c1564fac38e6a10d79b5acbc1b9d18297bf2f48416c5cf7b5cdf8 root@ubuntu:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0600ae85f83c moremagic/centos7-sshd:latest "/bin/sh -c '/usr/sb 11 seconds ago Up 10 seconds 0.0.0.0:49155->22/tcp cocky_blackwell be5afb74a714 moremagic/centos7-sshd:latest "/bin/sh -c '/usr/sb 11 seconds ago Up 11 seconds 0.0.0.0:49154->22/tcp clever_brattain c5cec9463fec moremagic/centos7-sshd:latest "/bin/sh -c '/usr/sb 12 seconds ago Up 11 seconds 0.0.0.0:49153->22/tcp desperate_bohr root@ubuntu:~# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE moremagic/centos7-sshd latest b00479a0a49f 9 weeks ago 282.9 MB root@ubuntu:~#
ここまできたところで
おもむろにアップデート!
手順はDockerの公式サイトの通り。
root@ubuntu:~# wget -qO- https://get.docker.com/ | sh ; OS/Arch (server): linux/amd64 If you would like to use Docker as a non-root user, you should now consider adding your user to the "docker" group with something like: sudo usermod -aG docker your-user Remember that you will have to log out and back in for this to take effect! root@ubuntu:~# docker version Client version: 1.6.2 Client API version: 1.18 Go version (client): go1.4.2 Git commit (client): 7c8fca2 OS/Arch (client): linux/amd64 Server version: 1.6.2 Server API version: 1.18 Go version (server): go1.4.2 Git commit (server): 7c8fca2 OS/Arch (server): linux/amd64
update は無事成功。
かなり Version が上がったようです。
さて、さっきのコンテナはどうなったかというと。。。
root@ubuntu:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES root@ubuntu:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES root@ubuntu:~# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
きれいに全部なくなりました。。。
update を行うときは すべてのコンテナを捨てるつもりでやらないと駄目ですね。
ま、当たり前か。