搞钱啊

Debian安装Docker

卸载旧版本的冲突包

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-doc podman-docker containerd runc | cut -f1)

Docker Engine 依赖于 containerdrunc,Docker Engine 将这些依赖捆绑成一个包:containerd.io,如果安装了 containerdrunc,先卸载以避免和新的Docker Engine版本冲突。此外 docker.io docker-compose docker-doc podman-docker 这些都不是Docker官方的包,都需要先卸载。

因此,需要卸载的包如下:

  • docker.io
  • docker-compose
  • docker-doc
  • podman-docker
  • containerd
  • runc

安装

使用apt仓库

搭建 Docker 的 apt 仓库

# Add Docker's official GPG key:
sudo apt update
sudo apt 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:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

安装Docker包

  1. 安装最新版本
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  1. 安装具体版本
apt list --all-versions docker-ce

docker-ce/bookworm 5:29.1.5-1~debian.12~bookworm <arch>
docker-ce/bookworm 5:29.1.4-1~debian.12~bookworm <arch>
...

选择所需版本,例如:

VERSION_STRING=5:29.1.5-1~debian.12~bookworm
sudo apt install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
  1. 查看Docker服务是否在运行
sudo systemctl status docker

如果没有启动,手动启动

sudo systemctl start docker

卸载Docker Engine

  1. 卸载 Docker EngineCLIContainerdDocker Compose包:
sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
  1. 删除所有 imagevolumecontainer
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
  1. 移除 apt的源代码列表和钥匙圈
sudo rm /etc/apt/sources.list.d/docker.sources
sudo rm /etc/apt/keyrings/docker.asc