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 ,需要配置镜像地址:
-
docker-cn:https://registry.docker-cn.com
-
网易镜像:http://hub-mirror.c.163.com
-
阿里云镜像:
打开地址 https://cr.console.aliyun.com/cn-hangzhou/mirrors 查看专属加速器地址
修改镜像地址
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