docker#002#使用deb软件包离线安装方法

上文我们使用apt以及docker提供的源,安装了docker相关软件。生产环境的有些机器无法访问外网,所以上述方法不适用。Docker官方给我们提供了除apt在线安装之外,基于deb包离线安装Docker的方法。

安装以及测试概述

  • 第一步,在机器A上,下载所需的deb软件包(机器A需可以访问外网);
  • 第二步,在机器A上,下载一个测试用Docker镜像;
  • 第三步,在机器A上,将deb软件包和测试用Docker镜像同步到内网机器B上;
  • 第四步,在机器B上,使用dpkg命令安装deb软件包;
  • 第五步,在机器B上,启动Docker;
  • 第六步,在机器B上,导入测试用镜像以及验证镜像是否可以正常运行;

第一步 下载deb软件包以及测试用Docker镜像

离线安装Docker,我们需要如下软件包:

1
2
3
4
5
containerd.io_<version>_<arch>.deb
docker-ce-cli_<version>_<arch>.deb
docker-ce_<version>_<arch>.deb
docker-buildx-plugin_<version>_<arch>.deb
docker-compose-plugin_<version>_<arch>.deb

打开网页 https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64 ,下载上述软件包。 注意:这里jammy是我当前所用操作系统 Ubuntu 22.04 的代号,请根据您自身系统的代号来填写。

或者使用如下链接直接下载所需deb软件包:

https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/containerd.io_1.6.31-1_amd64.deb
https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/docker-ce_26.1.3-1~ubuntu.22.04~jammy_amd64.deb
https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/docker-ce-cli_26.1.3-1~ubuntu.22.04~jammy_amd64.deb
https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/docker-buildx-plugin_0.14.0-1~ubuntu.22.04~jammy_amd64.deb
https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/docker-compose-plugin_2.27.0-1~ubuntu.22.04~jammy_amd64.deb

第二步 下载测试用Docker镜像

在机器A上,我们从DockerHub官网下载镜像 ubuntu:latest 用于测试。使用如下命令:

1
2
3
$ sudo docker pull ubuntu

$ sudo docker save -o ubuntu.tar ubuntu:latest

下载过程如下图所示:

第三步 拷贝软件包以及Docker镜像

在机器A上,我们将下载好的软件包和镜像,拷贝到机器B上,结果如下图所示:

第四步 安装deb软件包

在机器B上,我们已经有了离线软件包,然后使用下面的命令进行安装:

1
2
3
4
5
$ sudo dpkg -i ./containerd.io_1.6.31-1_amd64.deb
$ sudo dpkg -i ./docker-ce-cli_26.1.3-1~ubuntu.22.04~jammy_amd64.deb
$ sudo dpkg -i ./docker-ce_26.1.3-1~ubuntu.22.04~jammy_amd64.deb
$ sudo dpkg -i ./docker-buildx-plugin_0.14.0-1~ubuntu.22.04~jammy_amd64.deb
$ sudo dpkg -i ./docker-compose-plugin_2.27.0-1~ubuntu.22.04~jammy_amd64.deb

执行过程如下图所示:

第五步 启动Docker

在机器B上,我们使用如下命令启动Docker:

1
$ sudo systemctl start docker

启动结果如下图所示:

第六步 导入测试用镜像

在机器B上,我们导入测试用的Docker镜像。使用如下命令:

1
$ sudo docker load -i ubuntu.tar 

执行结果如下图所示:

官方资料