如何从官方来源升级 Debian 或 Ubuntu 上的 Docker
问题:我从发行版的基本存储库安装了 Docker,该存储库似乎已过时。如何在 [Ubuntu 或 Debian] 上升级 Docker,最好使用官方源?
虽然 Debian、Ubuntu 或其衍生版本在其基础存储库中提供 Docker,但由于 Docker 一直在积极开发中,因此其 Docker 版本往往很快就会过时。例如,Ubuntu 15.10 附带 Docker 1.6.2,而截至撰写本文时最新的 Docker 版本为 1.9.1。旧版本的 Docker 可能在与现有 Docker 存储库通信时出现问题。
对于那些想要在基于 Debian 的系统上将 Docker 升级到最新版本的人,Docker 提供了不同版本的官方 apt
源代码。
以下是如何使用官方 apt 源升级 Docker。
首先,安装必要的存储库密钥。
$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
然后添加您的发行版的 apt
源,如下所示。
对于 Ubuntu(12.04 LTS、14.04 LTS 和 14.10 或更高版本):
$ sudo sh -c "echo 'deb https://apt.dockerproject.org/repo ubuntu-$(lsb_release -sc) main' | cat > /etc/apt/sources.list.d/docker.list"
对于 Debian(7.0 及更高版本):
$ sudo sh -c "echo 'deb https://apt.dockerproject.org/repo debian-$(lsb_release -sc) main' | cat > /etc/apt/sources.list.d/docker.list"
接下来,删除现有的 Docker 安装并清理相关配置。
$ sudo apt-get purge docker.io
最后,从官方来源安装最新的 Docker。
$ sudo apt-get update; sudo apt-get install docker-engine
验证您安装的 Docker 版本。
$ docker version
Client:
Version: 1.9.1
API version: 1.21
Go version: go1.4.2
Git commit: a34a1d5
Built: Fri Nov 20 13:16:54 UTC 2015
OS/Arch: linux/amd64
Server:
Version: 1.9.1
API version: 1.21
Go version: go1.4.2
Git commit: a34a1d5
Built: Fri Nov 20 13:16:54 UTC 2015
OS/Arch: linux/amd64

请注意,在 Ubuntu 上,升级 Docker 的另一种方法是通过 Canonical 的 Docker PPA 存储库。虽然 Canonical 的 PPA 存储库比 Ubuntu 的基础存储库维护了更新的 Docker 版本,但它仍然落后于官方 Docker 的 apt 源。