如何在 Ubuntu 18 上安装较旧的 Docker 版本(18.06.2)?

Posted

技术标签:

【中文标题】如何在 Ubuntu 18 上安装较旧的 Docker 版本(18.06.2)?【英文标题】:How to install older Docker version (18.06.2) on Ubuntu 18? 【发布时间】:2020-02-29 05:28:49 【问题描述】:

我已经尝试安装 Kubernetes 好几天了,但它已经从 Docker 开始了。我似乎在 Ubuntu 上找不到合适的 Docker 版本。 由于 Kubernetes 推荐 Docker 18.06.2 版本,我首先按照 Kubernetes 上的步骤进行操作:Kubernetes installation

我在哪里得到这个错误:

E: Version '18.06.2~ce~3-0~ubuntu' for 'docker-ce' was not found

Docker 说通过这个命令列出可用的版本:

apt-cache madison docker-ce

这让我明白了:

root@vmi257369:~# apt-cache madison docker-ce
 docker-ce | 5:19.03.3~3-0~ubuntu-disco | https://download.docker.com/linux/ubuntu disco/stable amd64 Packages
 docker-ce | 5:19.03.2~3-0~ubuntu-disco | https://download.docker.com/linux/ubuntu disco/stable amd64 Packages
 docker-ce | 5:19.03.1~3-0~ubuntu-disco | https://download.docker.com/linux/ubuntu disco/stable amd64 Packages
 docker-ce | 5:19.03.0~3-0~ubuntu-disco | https://download.docker.com/linux/ubuntu disco/stable amd64 Packages

如您所见,没有 18.06,但只有 Kubernetes 不推荐的 19。

我已按照 Docker Docker installation 的此指南进行操作,但我似乎无法找到正确的 GPG 或 Docker 版本 18 所需的内容。

当然我也试过 *** 上的帖子see here,结果是:

root@vmi257369:~# export VERSION=18.06.1-ce && curl -sSL get.docker.com | sh
# Executing docker install script, commit: f45d7c11389849ff46a6b4d94e0dd1ffebca32c1
Warning: the "docker" command appears to already exist on this system.

If you already have Docker installed, this script can cause trouble, which is
why we're displaying this warning and provide the opportunity to cancel the
installation.

If you installed the current Docker package using this script and are using it
again to update Docker, you can safely ignore this message.

You may press Ctrl+C now to abort this script.
+ sleep 20
+ sh -c apt-get update -qq >/dev/null
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null
+ sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" | apt-key add -qq - >/dev/null
Warning: apt-key output should not be parsed (stdout is not a terminal)
+ sh -c echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu disco stable" > /etc/apt/sources.list.d/docker.list
+ sh -c apt-get update -qq >/dev/null
INFO: Searching repository for VERSION '18.06.1-ce'
INFO: apt-cache madison 'docker-ce' | grep '18.06.1.*ce.*-0~ubuntu' | head -1 | awk '$1=$1;1' | cut -d' ' -f 3

ERROR: '18.06.1-ce' not found amongst apt-cache madison results

谁知道该怎么做?

回答时 通过这个命令

apt-add-repository "deb https://apt.dockerproject.org/repo ubuntu-$(lsb_release -cs) main"

我收到此错误: 无法获取 403 Forbidden on IP .... 它在 Contabo 服务器上,也许这就是原因?

【问题讨论】:

【参考方案1】:
sudo -i
curl -fsSL https://apt.dockerproject.org/gpg | apt-key add -
apt-add-repository "deb https://apt.dockerproject.org/repo ubuntu-$(lsb_release -cs) main"
apt-get update -y && apt-get install docker-ce=18.06.2~ce~3-0~ubuntu

sudo -i
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
apt-get update -y && apt install -y docker-ce=18.06.3~ce~3-0~ubuntu docker-ce-cli=18.06.3~ce~3-0~ubuntu containerd.io

【讨论】:

我更新了答案。从这样的存储库进行更新不能安全地完成,因此默认禁用。有关存储库的创建,请参见 apt-secure(8) 手册页。 你有没有通过curl -fsSL https://apt.dockerproject.org/gpg | apt-key add -添加密钥? 不行,页面apt.dockerproject.org/gpg不存在

以上是关于如何在 Ubuntu 18 上安装较旧的 Docker 版本(18.06.2)?的主要内容,如果未能解决你的问题,请参考以下文章

如何安装较旧的 Goclipse 版本?无法在 Eclipse 4.5.2 (Mars.2) 上安装 Goclipse 16.1

哪个 CUDA Toolkit 版本适用于较旧的 NVIDIA 驱动程序

在 Ubuntu 16.04 上安装 Cilk 时出现问题

连接到较旧的 Postgresql 数据库

如何在较旧的 GPU 上测试 OpenGL 应用程序?

安装较旧的角度版本 5?