一、安装 Docker

在 Ubuntu 20.04、22.04、24.04 上安装 Docker 的步骤基本一致,主要差异在于仓库代号和指定版本安装时的包版本号后缀不同。

1.0 查看 Ubuntu 系统版本

在执行安装前,建议先确认当前系统版本:

cat /etc/os-release

或者:

lsb_release -a

常见 Ubuntu 版本与代号对应关系如下:

  • Ubuntu 20.04:focal
  • Ubuntu 22.04:jammy
  • Ubuntu 24.04:noble

1.1 安装最新版本的 Docker

  1. 更新系统软件包

    sudo apt update -y
    
  2. 安装必要的软件包

    sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
    
  3. 添加 Docker 的 APT 仓库(使用阿里云镜像)

    sudo mkdir -p /etc/apt/keyrings
    curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    

    不同 Ubuntu 版本可直接使用下面对应命令:

    Ubuntu 20.04:

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt update -y
    

    Ubuntu 22.04:

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu jammy stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt update -y
    

    Ubuntu 24.04:

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu noble stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt update -y
    
  4. 安装最新版本的 Docker

    sudo apt install -y docker-ce docker-ce-cli containerd.io
    
  5. 启动并设置开机自启

    sudo systemctl start docker
    sudo systemctl enable docker
    
  6. 验证安装结果

    docker --version
    

    如果输出类似 Docker version 20.10.xx,说明安装成功。


1.2 安装指定版本的 Docker

如果需要安装特定版本(如为了兼容某些软件),可以按以下步骤操作:

  1. 查看支持的 Docker 版本

    apt-cache madison docker-ce
    

    输出示例如:

    docker-ce | 5:28.0.1-1~ubuntu.20.04~focal | https://mirrors.aliyun.com/docker-ce/linux/ubuntu focal/stable amd64 Packages
    docker-ce | 5:28.0.1-1~ubuntu.22.04~jammy | https://mirrors.aliyun.com/docker-ce/linux/ubuntu jammy/stable amd64 Packages
    docker-ce | 5:28.0.1-1~ubuntu.24.04~noble | https://mirrors.aliyun.com/docker-ce/linux/ubuntu noble/stable amd64 Packages
    ...
    
  2. 安装指定版本的 Docker

    先根据 apt-cache madison docker-ce 的输出,选择与你系统版本对应的版本号。

    Ubuntu 20.04 示例:

    sudo apt install -y docker-ce=5:28.0.1-1~ubuntu.20.04~focal docker-ce-cli=5:28.0.1-1~ubuntu.20.04~focal containerd.io
    

    Ubuntu 22.04 示例:

    sudo apt install -y docker-ce=5:28.0.1-1~ubuntu.22.04~jammy docker-ce-cli=5:28.0.1-1~ubuntu.22.04~jammy containerd.io
    

    Ubuntu 24.04 示例:

    sudo apt install -y docker-ce=5:28.0.1-1~ubuntu.24.04~noble docker-ce-cli=5:28.0.1-1~ubuntu.24.04~noble containerd.io
    
  3. 启动并设置开机自启

    sudo systemctl start docker
    sudo systemctl enable docker
    
  4. 验证安装版本

    docker --version
    

二、配置 Docker 镜像加速器(国内镜像源)

在国内网络环境下,直接访问 Docker Hub 可能速度较慢。可通过配置国内镜像源加速拉取镜像。

  1. 配置加速器

    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://dockerproxy.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://docker.nju.edu.cn",
        "https://vp5v3vra.mirror.aliyuncs.com",
        "https://docker.registry.cyou",
        "https://docker-cf.registry.cyou",
        "https://dockercf.jsdelivr.fyi",
        "https://docker.jsdelivr.fyi",
        "https://dockertest.jsdelivr.fyi",
        "https://mirror.baidubce.com",
        "https://docker.m.daocloud.io",
        "https://docker.nju.edu.cn",
        "https://docker.mirrors.sjtug.sjtu.edu.cn",
        "https://docker.mirrors.ustc.edu.cn",
        "https://mirror.iscas.ac.cn",
        "https://docker.rainbond.cc"
      ]
    }
    EOF
    
  2. 重启 Docker 服务

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    

三、安装 Docker Compose

3.1 安装最新版本的 Docker Compose

  1. 下载最新版本

可以执行下面命令:

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

注意:也可以将${latest_version} 需替换为实际版本号,例如 v2.32.2

  1. 赋予执行权限

    sudo chmod +x /usr/local/bin/docker-compose
    
  2. 验证安装结果

    docker-compose --version
    

    若输出类似 Docker Compose version v2.32.2 则说明安装成功。


3.2 安装指定版本的 Docker Compose

可以先在 GitHub Releases 页面 查看有哪些版本号,如果需要安装某个固定版本(如 v2.32.2),可按以下步骤操作:

  1. 下载指定版本

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

    在网络环境不佳的情况下,此方式可能比较慢甚至会超时。可以直接在 GitHub 上下载相应的 .tar.gz 或可执行文件后手动上传至服务器。例如:

    1. GitHub Releases 选择对应版本并下载 docker-compose-Linux-x86_64(根据系统架构选择文件)。
    2. 使用 scp 或其他方式上传至服务器的 /usr/local/bin/ 目录。
    3. 将文件重命名为 docker-compose,以便统一使用。
  2. 赋予执行权限

    sudo chmod +x /usr/local/bin/docker-compose
    
  3. 验证安装版本

    docker-compose --version
    

    如果输出类似 docker-compose version 1.29.2,表示安装成功。


四、卸载 Docker 和 Docker Compose

4.1 卸载 Docker

如无需再使用 Docker,可按照以下步骤卸载:

  1. 停止 Docker 服务

    sudo systemctl stop docker
    
  2. 卸载相关组件

    sudo apt remove -y docker-ce docker-ce-cli containerd.io
    sudo apt autoremove -y
    
  3. 清理 Docker 数据

    sudo rm -rf /var/lib/docker
    sudo rm -rf /var/lib/containerd
    

    以上操作会删除 Docker 及其相关数据(包括容器、镜像等),请谨慎执行。


4.2 卸载 Docker Compose

Docker Compose 卸载很简单,只需删除其二进制文件:

sudo rm -f /usr/local/bin/docker-compose

验证是否已卸载:

docker-compose --version

如果提示 command not found,则说明卸载成功。


五、常见问题与解决方案

  1. 无法访问 Docker 仓库导致安装失败

    可先查看当前系统版本:

    cat /etc/os-release
    

    再检查 APT 仓库配置是否与系统版本对应,例如:

    cat /etc/apt/sources.list.d/docker.list
    

    若为 Ubuntu 20.04,应看到 focal;若为 Ubuntu 22.04,应看到 jammy;若为 Ubuntu 24.04,应看到 noble。确认后重新执行 sudo apt update -y 再安装 Docker。

  2. docker-compose 无法执行或出现 “Permission denied”

    • 确认 /usr/local/bin/docker-compose 文件权限正确:
      sudo chmod +x /usr/local/bin/docker-compose
      
    • 若仍无法使用,检查是否需要手动添加 /usr/local/bin 至系统 PATH
      export PATH=$PATH:/usr/local/bin
      
    • 或将上述命令添加进 ~/.bashrc,然后 source ~/.bashrc

六、总结

  • 安装最新版本:无需特定依赖要求时,可直接获取最新特性与安全补丁。
  • 安装指定版本:在对环境兼容性要求较高、尤其是生产环境时,可选择特定版本。
  • 镜像加速器配置:国内网络环境下拉取镜像会更稳定、更快速。
  • 卸载与数据清理:提供从系统中彻底移除 Docker 及其数据的方式,便于重新配置或节省资源。
  • 常见问题处理:针对国内访问缓慢、docker-compose 权限等问题进行了说明。
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐