docker & docker-compose 安装 + 换源

⚠️ WATRNING
PS:此文档适用于 Debian 以及 Ubuntu LTS
相关链接:docker-compose 下载docker 镜像 1docker 镜像 2

准备工作

请先使用 sudo -isu root 切换到 root 用户进行操作,卸载旧版本 docker,旧版本 docker 名为 docker 或 docker-engine,为避免产生冲突,请先卸载旧版本 docker。

sudo apt-get remove docker \
             docker-engine \
             docker.io

使用 APT 安装 docker

添加必要软件

apt-get update

apt-get install \
		apt-transport-https \
		ca-certificates \
		curl \
		gnupg \
		lsb-release

添加 GPG 软件源

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg


# 官方源
# curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

安装 docker

apt-get update

apt-get install docker-ce docker-ce-cli containerd.io

使用脚本安装 docker

# curl -fsSL test.docker.com -o get-docker.sh
curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh --mirror Aliyun
# sh get-docker.sh --mirror AzureChinaCloud

测试 docker 是否安装正确

systemctl enable docker
systemctl start docker

docker version
Client: Docker Engine - Community
 Version:           28.5.2
 API version:       1.51
 Go version:        go1.25.3
 Git commit:        ecc6942
 Built:             Wed Nov  5 14:43:25 2025
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          28.5.2
  API version:      1.51 (minimum version 1.24)
  Go version:       go1.25.3
  Git commit:       89c5e8f
  Built:            Wed Nov  5 14:43:25 2025
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.7.29
  GitCommit:        442cb34bda9a6a0fed82a2ca7cade05c5c749582
 runc:
  Version:          1.3.3
  GitCommit:        v1.3.3-0-gd842d771
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

安装 docker-compose

curl -L "https://github.com/docker/compose/releases/download/latest/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

docker-compose version

docker 换源

tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.imgdb.de",
    "https://docker-0.unsee.tech",
    "https://docker.hlmirror.com",
    "https://cjie.eu.org"
    ]
}
EOF

sudo systemctl daemon-reload 
sudo systemctl restart docker

评论