注:本文章的ubuntu的版本为:ubuntu-20.04.6-live-server-amd64。

Ubuntu(在线版)

更新软件源

sudo apt-get update

安装ca-certificates和curl

sudo apt-get install ca-certificates curl

ca-certificates:一个根证书包,用于验证HTTPS站点的安全证书。

curl:一个命令行工具,用于从互联网上下载文件,这里用来下载Docker的GPG密钥。

创建 /etc/apt/keyrings目录

sudo install -m 0755 -d /etc/apt/keyrings

 在/etc/apt目录下创建一个名为keyrings的子目录,权限设置为0755(即所有用户可以读取和执行,但只有文件拥有者可以写入)。这个目录用于存储Docker的GPG密钥。

下载Docker的GPG密钥

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

使用curl从Docker官方网站下载GPG密钥,并将其保存到/etc/apt/keyrings/docker.asc文件中。密钥用于验证Docker软件包的来源,以确保它们没有被篡改。 

修改文件权限

sudo chmod a+r /etc/apt/keyrings/docker.asc

添加Docker仓库到APT源列表

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新软件源

sudo apt-get update

安装Docker

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

docker-ce: Docker Community Edition,即Docker社区版。Docker的开源版本,包含了Docker引擎和相关功能,使你能够创建、运行和管理容器。

docker-ce-cli: 客户端工具。执行如docker run、docker ps等命令。

containerd.io:Docker引擎的核心组成部分。负责容器的创建、执行和管理。

docker-buildx-plugin:Docker的一个插件,提供了用于构建容器镜像的扩展功能,尤其是对多架构构建的支持。

docker-compose-plugin:Docker Compose的一个插件,用于管理多个Docker容器的应用。能够通过一个配置文件(docker-compose.yml)定义和运行多个容器,简化了应用的部署和管理。

启动服务

systemctl start docker

查看Docker状态

systemctl status docker

看到activate即启动成功。 

验证安装是否成功

sudo docker run hello-world

输出Hello from Docker!即安装成功。

注:可能出现报错:

Unable to find image 'hello-world:latest' locally docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded Run 'docker run --help' for more information

错误通常意味着Docker在尝试连接到Docker Hub时遇到了超时问题。这通常是由于网络连接不稳定或Docker无法访问Docker Hub。

Ubuntu(离线版)

进入下载链接选择Docker版本下载

https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/

注:Ubuntu 20.04 LTS代号是Focal Fossa。

注:本文章下载:

containerd.io_1.7.27-1_amd64.deb

docker-ce_28.1.1-1~ubuntu.20.04~focal_amd64.deb

docker-ce-cli_28.1.1-1~ubuntu.20.04~focal_amd64.deb

docker-buildx-plugin_0.23.0-1~ubuntu.20.04~focal_amd64.deb

docker-compose-plugin_2.35.1-1~ubuntu.20.04~focal_amd64.deb

安装Docker

sudo dpkg -i containerd.io_1.7.27-1_amd64.deb \
  docker-ce_28.1.1-1~ubuntu.20.04~focal_amd64.deb \
  docker-ce-cli_28.1.1-1~ubuntu.20.04~focal_amd64.deb \
  docker-buildx-plugin_0.23.0-1~ubuntu.20.04~focal_amd64.deb \
  docker-compose-plugin_2.35.1-1~ubuntu.20.04~focal_amd64.deb

后续启动Docker服务与验证的步骤与在线版一致,不再重复说明。

设置Docker组

如果执行Docker命令时,不加sudo会报以下错误:

permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.soc

则将当前用户添加到Docker组即可。

# sudo usermod -aG docker 当前用户名
# 例如
sudo usermod -aG docker user

然后注销并重新登录(或重启系统),让变更生效。

Docker镜像加速

本文章前面验证安装是否成功步骤中,出现Unable to find image 'hello-world:latest' locally docker报错后,通常是由于网络连接不稳定的原因,从而无法下载hello-world的镜像,可配置Docker镜像源加速Docker镜像的下载从而解决报错。

创建镜像地址文件

sudo vim /etc/docker/daemon.json

文件内容如下:

{
	  "registry-mirrors":[
	     "https://docker.mirrors.ustc.edu.cn",
	     "https://docker.nju.edu.cn",
         "https://docker.m.daocloud.io"
	     ]
}

​注: https://docker.mirrors.ustc.edu.cn为中国科学技术大学镜像源,https://docker.nju.edu.cn为南京大学镜像源。https://docker.m.daocloud.io为道客源。

重新加载systemd配置文件

sudo systemctl daemon-reload

重启Docker

 systemctl restart docker

Docker阿里云镜像加速

阿里云镜像加速服务是阿里云提供的Docker镜像加速器,旨在解决国内用户拉取Docker Hub官方镜像时速度慢的问题。通过配置阿里云镜像加速器,可以显著提升镜像下载速度。

进入以下链接:

https://www.aliyun.com/product/acr

登录阿里云后,开通服务,进入到管理控制台。

再进入到镜像加速器,即可见到阿里云的镜像加速地址。

后修改 /etc/docker/daemon.json文件,并重新加载systemd配置文件,重启Docker即可。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐