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
相关推荐
sbjdhjd2 分钟前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
xh didida43 分钟前
Linux -- 基础IO
linux·服务器·开发语言·c++
zly35002 小时前
centos7 mount设备挂载 /dev/sda1/硬盘挂载
linux·运维·服务器
帷幕落秋2 小时前
Docker的两种安装
运维·docker·容器
工业一体机老司机2 小时前
工业一体机选购后的系统部署:Ubuntu下Docker容器化运行与GPIO配置
linux·ubuntu·docker·人机交互
哎呦,帅小伙哦2 小时前
进程监控工具——htop
linux·运维·服务器
夏虫不可与之言冰3 小时前
Windows WSL2 (Ubuntu) 搭建 ESP‑IDF 6.1 开发环境全过程演示
linux·windows·ubuntu·esp32·乐鑫科技·乐鑫eim·乐鑫代理商
春涧草茶4 小时前
慢就是快12-12手动抛出异常
java·linux·前端
KING-WU5125 小时前
Linux 工具之Make 与 Makefile
java·linux·服务器
Lsetea5 小时前
OpenSSL报certificate is not yet valid:error 9与notBefore时间排查
linux·运维·https·ssl证书·openssl