这是本节的多页打印视图。 点击此处打印.

返回本页常规视图.

安装

Docker在各个操作系统下的安装

1 - 安装概述

Docker安装概述

安装 docker engine:

https://docs.docker.com/engine/install/debian/

2 - debian 12 下安装 Docker

Docker 在 debian12 下的安装

安装docker

参考 docker 官网的安装文档:

https://docs.docker.com/engine/install/debian/

卸载旧版本

for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done

用 apt 安装

添加 docker 的 apt 仓库:

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

如果要安装最新版本,可以直接:

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

也可以选择要安装版本。查看可选的 docker 版本:

apt-cache madison docker-ce | awk '{ print $3 }'

列出的版本有:

$ apt-cache madison docker-ce | awk '{ print $3 }'
5:28.0.1-1~debian.12~bookworm
5:28.0.0-1~debian.12~bookworm
5:27.5.1-1~debian.12~bookworm
5:27.5.0-1~debian.12~bookworm
5:27.4.1-1~debian.12~bookworm
......

这里可以选择使用一个版本,我直接选了最新的 28.0.1 版本, 执行安装命令:

VERSION_STRING=5:28.0.1-1~debian.12~bookworm

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

安装完成后检验一下:

sudo docker run hello-world

查看安装的版本:

$ docker --version
Docker version 28.0.1, build 068a01e

安装后设置

参考 docker 官网的设置文档:

https://docs.docker.com/engine/install/linux-postinstall/

设置权限避免每次sudo

为了以非 root 用户使用 docker, 可以将用户加入 “docker” 组.

sudo groupadd docker
sudo usermod -aG docker $USER

重新登录之后生效。或者用下面的命令直接生效:

newgrp docker

验证一下:

docker run hello-world

设置 docker 为系统服务

sudo systemctl enable docker.service
sudo systemctl enable containerd.service

取消 apt source 更新

docker 安装之后,没有必要时刻保持更新,因此可以取消 apt source的设置,加速 apt update 的执行:

sudo vi /etc/apt/sources.list.d/docker.list

参考资料

3 - Docker安装后的设置

Docker 安装后的设置

镜像加速

如果遇到镜像无法下载下来,比如报错:

$ docker run hello-world

Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

就需要考虑配置镜像地址。

可用的镜像地址

为了加速拉取 Docker ,需要配置镜像地址:

修改镜像地址

mac下修改

任务栏点击 Docker for mac 应用图标 -> Perferences… -> Daemon -> Registry mirrors。

linux下修改

通过修改 daemon 配置文件 /etc/docker/daemon.json 来使用加速器:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker