如何安装特定版本的Docker

37
如何安装特定版本的Docker(如1.3.2)?
我在Docker官方文档中找不到任何说明。 参考此链接适用于Ubuntu
按照下面的说明安装Docker版本1.0.1: $ sudo apt-get update $ sudo apt-get install docker.io 而按照以下说明会安装最新版本的Docker 1.4.1: $ sudo sh -c "echo deb https://get.docker.com/ubuntu docker main > /etc/apt/sources.list.d/docker.list" $ sudo apt-get update $ sudo apt-get install lxc-docker 如何安装特定版本,例如1.3.2?
8个回答

34

我发现使用以下方式更容易检查可用版本:

sudo apt-cache policy docker-engine

然后安装你想要的那一个:

sudo  apt-get install docker-engine=1.7.1-0~trusty

只需按照docker文档https://docs.docker.com/engine/installation/ubuntulinux/的说明,但选择特定版本即可。


可用版本检查非常有帮助,谢谢。 - Khamidulla
这应该是答案。最简洁和简单的。 - garbagecollector

30

我从这个 Github 的问题评论中得到了答案:issue comment

以上更新的摘要如下:

echo deb http://get.docker.com/ubuntu docker main > /etc/apt/sources.list.d/docker.list

apt-key adv --keyserver pgp.mit.edu --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9

apt-get update
apt-get install -y lxc-docker-1.3.3

如果出现权限问题,则可以使用以下命令sudo

echo deb http://get.docker.com/ubuntu docker main | sudo tee /etc/apt/sources.list.d/docker.list

sudo apt-key adv --keyserver pgp.mit.edu --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9

sudo apt-get update
sudo apt-get install -y lxc-docker-1.3.3

小贴士:

不知道哪个版本?那么在 lxc-docker- 后按下 Tab 键,即可显示可用的版本:

sudo apt-get install -y lxc-docker-<Hit Tab here>

查看可用的Docker版本列表。


对于权限问题,应该使用以下命令:echo deb http://get.docker.com/ubuntu docker main | sudo tee /etc/apt/sources.list.d/docker.list - lewurm
1
它只有 Docker 版本 1.9.1,有更新吗? - WoLfPwNeR

17

我是如何在我的笔记本电脑上完成这一操作的(顺便说一下,https://get.docker.com/ubuntu/已不再提供):

$ wget -qO- https://get.docker.com/ | sh      # install resources
$ apt-cache showpkg docker-engine             # show version which are available
$ apt-get install docker-engine=1.8.2-0~willy # install 1.8.2 version
$ sudo apt-mark hold docker-engine            # prevent upgrade on sys upgrade
$ docker version                              # check installed docker version

6

按照以下步骤安装特定版本的docker-ce和docker-ce-cli。

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update

找到特定版本的docker-ec和docker-ce-cli。在这个例子中,我正在寻找19.03版本。

apt-cache policy docker-ce | grep 19
apt-cache policy docker-ce-cli | grep 19

从上述命令中,您将获得Docker版本列表,复制相应的版本。
apt-get install docker-ce=5:19.03.14~3-0~ubuntu-bionic docker-ce-cli=5:19.03.14~3-0~ubuntu-bionic 

2

随着Docker引入两种不同的版本(CE和EE),在任何系统上安装Docker的最佳且简单的方法是运行以下命令,您无需做任何事情。

wget -qO- https://get.docker.com/ | sh

如果您想安装特定版本的Docker,可以运行以下命令查找所有可用的Docker版本。

apt-cache madison docker-ce #(for ubuntu)
yum list docker-ce.x86_64  --showduplicates | sort -r #(for centos)

然后选择适当的版本并将其放置在下面的命令中。
wget -qO- https://get.docker.com/ | sed 's/docker-ce/docker-ce=<DOCKER_VERSION/' | sh

1
wget -qO- https://get.docker.com/ | sed 's/lxc-docker/lxc-docker-1.6.2/' | sh

将版本号1.6.2替换为您想要的版本。

1

我从Ubuntu 16.04的源中获取了1.6.2年前的版本。这可能无法应用于其他Docker版本:

  1. git clone https://github.com/moby/moby docker

  2. cd docker

  3. git tag -l -- 在此列表中查找您感兴趣的标记(例如 v1.6.2)

  4. git checkout <tag name>

  5. sudo make build

    根据您的版本旧新程度,这一步可能会出现一些错误。如果您看到示例docker镜像无法被拉取,请随意在Dockerfile中注释相关行。您可能会看到一个与lvm2源相关的错误。修改指定此处不存在的链接到源的非存在链接。具体来说,在我的情况下,我必须更改Dockerfile以使其引用位于git://sourceware.org/git/lvm2.git上的lvm2源代码。

  6. sudo make binary


1
另一个选择是在脚本中将install -y lxc-docker替换为install -y lxc-docker-<version>
例如,这将安装docker 1.6.2:
RUN wget -qO- https://get.docker.com/ubuntu/ | sed -r 's/^apt-get install -y lxc-docker$/apt-get install -y lxc-docker-1.6.2/g' | sh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接