linux-安装Ubuntu的docker

文章目录

一、准备工作

  1. 卸载旧版本
bash 复制代码
# 先清理系统残留
sudo apt remove -y docker docker-engine docker.io contained runc docker-compose
  1. 更新系统并安装依赖
bash 复制代码
# 更新软件源
sudo apt update

# 安装必要工具(证书、下载、加密)
sudo apt install -y ca-certificates curl gnupg lsb-release

二、添加Docker官方源

  1. 创建秘钥目录
bash 复制代码
sudo install -m 0755 -d /etc/apt/keyrings
  1. 导入Docker GPG密钥(验证包安全)
bash 复制代码
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# 赋予读权限
sudo chmod a+r /etc/apt/keyrings/docker.gpg
  1. 添加 Docker 官方 APT 源
bash 复制代码
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

三、安装Docker Engine

  1. 刷新源并安装
bash 复制代码
sudo apt update

# 查看可用版本
apt-cache madison docker-ce | head -20

# 安装最新稳定版(含 Compose 插件)
sudo apt install -y \
  docker-ce \
  docker-ce-cli \
  containerd.io \
  docker-buildx-plugin \
  docker-compose-plugin
  1. 安装docker-compose工具
bash 复制代码
sudo apt update && sudo apt install docker-compose -y

四、配置Docker

  1. 启动并配置开机自启
bash 复制代码
# 启动 Docker
sudo systemctl start docker

# 开机自启
sudo systemctl enable docker

# 查看状态(active (running) 即成功)
sudo systemctl status docker
  1. 免sudo使用Docker
    默认必须sudo才能够用docker,把当前用户加入docker
bash 复制代码
# 加入 docker 组
sudo usermod -aG docker $USER

# 立即生效(无需重启)
newgrp docker

# 无需sudo即可执行
docker info

五、配置国内镜像加速

bash 复制代码
# 创建配置目录
sudo mkdir -p /etc/docker

# 写入镜像源(阿里云、腾讯云、中科大)
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://registry.docker-cn.com"
  ]
}
EOF

# 重启 Docker 生效
sudo systemctl restart docker

六、验证安装

  1. 查看版本
bash 复制代码
# Docker 版本
docker -v
# Docker Compose 版本(v2 插件)
docker compose version
相关推荐
用户9718356334663 小时前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪4 小时前
linux 拷贝文件或目录到指定的位置
linux
摇滚侠20 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
bush420 小时前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行52021 小时前
Linux 11 动态监控指令top
linux
Alsn8621 小时前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
不会C语言的男孩1 天前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言
古城小栈1 天前
Unix 与 Linux 异同小叙
linux·服务器·unix
凡人叶枫1 天前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
2601_961875241 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant