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
相关推荐
✎﹏赤子·墨筱晗♪2 分钟前
Ansible Playbook 入门指南:从基础到实战
linux·服务器·ansible
啥也不会的小胡7 分钟前
深入理解 Docker:从入门到实践
docker·容器
乌萨奇也要立志学C++1 小时前
【Linux】进程概念(六):进程地址空间深度解析:虚拟地址与内存管理的奥秘
linux·运维
月殇_木言5 小时前
Linux 线程
linux
wangjialelele5 小时前
Linux中的线程
java·linux·jvm·c++
2301_800050997 小时前
DNS 服务器
linux·运维·笔记
Lin_Aries_04217 小时前
容器化简单的 Java 应用程序
java·linux·运维·开发语言·docker·容器·rpc
SELSL7 小时前
SQLite3的API调用实战例子
linux·数据库·c++·sqlite3·sqlite实战
小牛马爱写博客8 小时前
DNS 服务器与 DHCP 服务器详解及配置指南
linux·运维·服务器·dns·dhcp
维尔切8 小时前
HAProxy 负载均衡器
linux·运维·数据库·负载均衡