Ubuntu安装Docker命令清单(以20.04为例)

在你虚拟机上完成Ubuntu的下载后打开终端!!!

Ubuntu安装Docker终极命令清单(以20.04为例)

bash 复制代码
# 1. 卸载旧版本(全新系统可跳过)
sudo apt-get remove docker docker-engine docker.io containerd runc

# 2. 安装基础工具
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

# 3. 添加Docker官方GPG密钥
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# 4. 设置稳定版仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 5. 安装Docker引擎
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 6. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 7. 验证安装
docker --version              # 查看版本
sudo docker run hello-world   # 运行测试容器

必做优化配置(解决国内环境问题)

🔧 1. 镜像加速(解决docker pull慢)
bash 复制代码
# 创建配置文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://dockerhub.timeweb.cloud"
  ]
}
EOF

# 重启生效
sudo systemctl daemon-reload
sudo systemctl restart docker
💾 2. 修改数据目录(避免系统盘爆满)
bash 复制代码
# 创建新目录(假设/data是大容量磁盘)
sudo mkdir -p /data/var/lib/docker

# 修改配置
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "data-root": "/data/var/lib/docker"
}
EOF

# 重启服务
sudo systemctl restart docker

避坑指南(课件中的关键报错解决方案)

❌ 报错:docker.service: failed with result 'exit-code'
bash 复制代码
# 终极修复命令
sudo systemctl daemon-reload
sudo systemctl reset-failed docker.service
sudo systemctl start docker
🔑 权限问题:Got permission denied
bash 复制代码
# 将当前用户加入docker组
sudo usermod -aG docker $USER
newgrp docker  # 立即生效(或重启终端)

安装后快速检查

bash 复制代码
# 检查服务状态
sudo systemctl status docker

# 查看详细配置
docker info

# 测试运行Nginx容器
docker run -d -p 80:80 --name my-nginx nginx
# 访问 http://你的服务器IP

重要补充说明

  1. 系统要求

    • 仅支持64位系统(x86_64/amd64

    • Ubuntu版本需≥18.04(推荐20.04/22.04 LTS)

    • 内核版本≥5.4(uname -r查看)

  2. 网络准备

    bash 复制代码
    # 开放Docker端口(按需)
    sudo ufw allow 2375/tcp   # 管理端口
    sudo ufw allow 80/tcp     # 应用端口
  3. 彻底卸载Docker

    bash 复制代码
    sudo apt purge docker-*
    sudo rm -rf /var/lib/docker /etc/docker
    sudo rm /etc/apparmor.d/docker
相关推荐
技术猿禁5 分钟前
Linux运维开发
linux·运维·运维开发
脚踏实地,坚持不懈!11 分钟前
Android ANR 内核底层全解析:从一次触摸到“应用无响应”
android·linux
不会就选b15 分钟前
Linux之socket编程(三)
linux·运维·服务器
秋风&萧瑟24 分钟前
【Linux系统编程】Linux IPC 的使用
linux·运维·网络
玖石书1 小时前
WSL2 手动安装 Ubuntu 24.04 到指定磁盘位置
linux·运维·ubuntu·wsl
库玛西2 小时前
深入浅出传输层:UDP 与 TCP 协议全景指南
linux·服务器·网络·c++·笔记·tcp/ip·udp
随便做点啥2 小时前
32卡-64G-910B4-16后端-(Qwen3.8-27B-W8A8)集群部署报告
运维·服务器·经验分享·docker·vllm
薛定谔的悦6 小时前
储能 EMS 的功率策略:从一块电表到一次逆流的 200 毫秒
大数据·linux·能源·储能·bms
新时代牛马9 小时前
Linux 内核入门地图:架构、源码目录与五大子系统
linux·运维·架构
Julien20049 小时前
控制 SELinux 文件上下文
linux·运维·服务器