Docker 安装教程
更新: 4/19/2025 字数: 0 字 时长: 0 分钟
Docker 是一种流行的容器化平台,可以帮助开发者轻松地构建、打包、部署和运行应用程序。
本教程将指导你在 Linux 系统上安装 Docker。
先决条件
系统要求
- 一台运行 Linux 的服务器或虚拟机。
- 具有
sudo
权限的用户。
卸载旧版本
Ubuntu/Debian:
bashfor pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt remove $pkg; done
bashfor pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt remove $pkg; done
CentOS/RHEL:
bashsudo dnf remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
bashsudo dnf remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine \ podman \ runc
apt
或 dnf
可能会报告您没有安装这些软件包。
更新系统软件包
在安装 Docker 之前,首先要确保你的系统软件包是最新的。打开终端并运行以下命令:
Ubuntu/Debian:
bashsudo apt update sudo apt upgrade
CentOS/RHEL:
bashsudo dnf update
安装方法
一键脚本安装
curl -fsSL https://get.docker.com | bash -s docker
可在此命令后附带 --mirror
参数设置镜像源,以提高国内服务器下载 Docker 的速度
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
curl -fsSL https://get.docker.com | bash -s docker --mirror AzureChinaCloud
使用一键脚本后如何升级 Docker
如果您使用一键脚本安装了 Docker,则应直接使用包管理器升级 Docker。重新运行便捷脚本没有任何好处。如果脚本尝试重新安装主机上已存在的仓库,则重新运行该脚本可能会导致问题。
包管理器安装
Ubuntu/Debian
安装必要的依赖包:
bashsudo apt update sudo apt install ca-certificates curl gnupg
信任 Docker 的 GPG 公钥并添加仓库:
bashsudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null
bashsudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null
安装 Docker Engine:
bashsudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
CentOS/RHEL
设置软件仓库:
bashsudo dnf -y install dnf-plugins-core sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
bashsudo dnf -y install dnf-plugins-core sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
仓库地址替换为镜像站:
bashsed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
安装 Docker Engine:
bashsudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
后续步骤
启动 Docker 服务
安装完成后,启动 Docker 服务并设置开机自启动:
sudo systemctl start docker # 启动 Docker 服务
sudo systemctl enable docker # 设置开机自启动
# 或者一步到位
sudo systemctl enable --now docker
查看 Docker 服务是否正在运行:
sudo systemctl status docker
验证 Docker 安装
运行以下命令来验证 Docker 是否成功安装:
docker run hello-world
如果一切顺利,你将会看到 Docker 从 Docker Hub 下载 hello-world
镜像,并运行一个容器,输出一段欢迎消息。
可选步骤
配置 Docker 用户权限
默认情况下,只有 root
用户或具有 sudo
权限的用户才能运行 Docker 命令。为了方便使用,你可以将当前用户添加到 docker
用户组:
创建
docker
用户组:bashsudo groupadd docker
将您的用户添加到
docker
组中:bashsudo usermod -aG docker $USER
注销并重新登录,以便重新评估您的群组成员资格。
如果您在虚拟机中运行 Linux,则可能需要重新启动虚拟机才能使更改生效。
您还可以运行以下命令来激活对组的更改:
bashnewgrp docker
安装 Docker Compose
Docker Compose 用于定义和管理多容器 Docker 应用程序。
官方一键安装脚本通常已包含 Docker Compose,因此手动安装可能不是必需的。
下载 Docker Compose 二进制文件:
bashsudo curl -L "https://github.libk.top/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
bashsudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
验证 Docker Compose 安装
bashdocker-compose --version
提示
docker compose
和 docker-compose
的使用取决于你的安装方式:
docker compose
:如果你通过dnf install docker-compose-plugin
或类似的包管理器安装了docker-compose-plugin
,这是推荐的命令。docker-compose
:如果你没有安装docker-compose-plugin
,而是按照上面的步骤手动安装的,则使用此命令。
卸载 Docker Engine
Ubuntu/Debian
卸载 Docker Engine、CLI、containerd 和 Docker Compose 软件包:
bashsudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
主机上的镜像、容器、卷或自定义配置文件不会自动删除。要删除所有镜像、容器和卷,请执行以下操作:
bashsudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd
删除源列表和密钥环
bashsudo rm /etc/apt/sources.list.d/docker.list sudo rm /etc/apt/keyrings/docker.asc
您必须手动删除任何已编辑的配置文件。
CentOS/RHEL
卸载 Docker Engine、CLI、containerd 和 Docker Compose 软件包:
bashsudo dnf remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
主机上的镜像、容器、卷或自定义配置文件不会自动删除。要删除所有镜像、容器和卷,请执行以下操作:
bashsudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd
您必须手动删除任何已编辑的配置文件。