在Linux中安装Docker
🐳 Docker 完整安装与优化指南
本文档提供在 Linux 环境下从零开始安装最新版 Docker Engine 及 Docker Compose 的完整步骤。包含系统清理、官方仓库配置、服务启动以及国内镜像源优化。
1. 卸载旧版本(可选)
如果系统中曾安装过旧版本的 Docker(如 docker, docker.io, docker-engine),为避免产生冲突,请先执行完整卸载。如果是纯净系统可直接跳过此步。
对于 Ubuntu / Debian 系统:
sudo apt-get remove docker docker-engine docker.io containerd runc
对于 CentOS 系统:
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
2. 安装 Docker Engine 与 Compose 插件
推荐使用 Docker 官方存储库进行安装,以确保始终获取最新且稳定的版本。请根据您的服务器操作系统选择对应的完整安装步骤。
方案 A:Ubuntu 系统完整安装步骤
- 更新
apt包索引并安装基础依赖:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release
- 添加 Docker 官方的 GPG 密钥:
sudo mkdir -p /etc/apt/keyrings
curl -fsSL [https://download.docker.com/linux/ubuntu/gpg](https://download.docker.com/linux/ubuntu/gpg) | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
- 写入稳定版软件源配置:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] [https://download.docker.com/linux/ubuntu](https://download.docker.com/linux/ubuntu) $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- 再次更新包索引并安装 Docker 核心组件及 Compose 插件:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
方案 B:CentOS 系统完整安装步骤
- 安装
yum-utils依赖工具:
sudo yum install -y yum-utils
- 添加 Docker 官方稳定版软件仓库:
sudo yum-config-manager --add-repo [https://download.docker.com/linux/centos/docker-ce.repo](https://download.docker.com/linux/centos/docker-ce.repo)
- 安装 Docker 核心组件及 Compose 插件:
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
3. 启动服务并设置开机自启
安装完成后,Docker 服务通常不会自动启动。需要手动启动 Docker 服务,并将其设置为随系统开机自动启动。
sudo systemctl start docker
sudo systemctl enable docker
执行以下命令验证安装结果。若终端输出 Hello from Docker! 即代表 Docker 引擎已成功运行:
sudo docker run hello-world
4. 核心优化:配置镜像加速与日志限制
国内直接拉取 Docker Hub 官方镜像速度较慢,且容器长期运行产生的日志极易占满服务器磁盘空间。强烈建议配置国内加速源及全局日志轮转限制。
请直接复制并执行以下完整命令,系统将自动创建配置文件并重启 Docker 使配置生效:
sudo mkdir -p /etc/docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
"registry-mirrors": [
"[https://docker.m.daocloud.io](https://docker.m.daocloud.io)",
"[https://dockerproxy.com](https://dockerproxy.com)",
"[https://registry.docker-cn.com](https://registry.docker-cn.com)"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "20m",
"max-file": "3"
}
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员小航
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果