Ubuntu 22.04 安装 Docker

一、确认系统(你这个就是 Ubuntu 22.04)

plain 复制代码
lsb_release -a

如果看到 22.04,下面命令可以直接照抄。

二、安装 Docker(官方方式,最稳)

1️⃣ 卸载可能存在的旧 Docker(一般没有,执行也没事)

plain 复制代码
sudo apt remove -y docker docker-engine docker.io containerd runc

2️⃣ 安装依赖

plain 复制代码
sudo apt update
sudo apt install -y \
  ca-certificates \
  curl \
  gnupg \
  lsb-release

3️⃣ 添加 Docker 官方 GPG Key

plain 复制代码
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

4️⃣ 添加 Docker 官方仓库

plain 复制代码
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 引擎

plain 复制代码
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

6️⃣ 启动 Docker 并设为开机自启

plain 复制代码
sudo systemctl start docker
sudo systemctl enable docker

7️⃣ 验证 Docker 是否安装成功

plain 复制代码
docker --version

看到类似:

plain 复制代码
Docker version 26.x.x

说明 OK ✅

三、(强烈推荐)免 sudo 使用 docker

否则你每次都要打 sudo

plain 复制代码
sudo usermod -aG docker $USER

⚠️ 一定要重新登录一次服务器(退出 SSH 再连)

验证:

plain 复制代码
docker ps

四、用 Docker 跑 MySQL 8(一步到位)

1️⃣ 拉取 MySQL 镜像

plain 复制代码
docker pull mysql:8.0

2️⃣ 创建 MySQL 容器(推荐配置)

plain 复制代码
docker run -d \
  --name mysql8 \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -e MYSQL_DATABASE=test_db \
  -e MYSQL_CHARSET=utf8mb4 \
  -e MYSQL_COLLATION=utf8mb4_unicode_ci \
  -v mysql_data:/var/lib/mysql \
  --restart unless-stopped \
  mysql:8.0

📌 说明:

  • 数据持久化(mysql_data
  • 容器重启自动拉起
  • 字符集直接 utf8mb4
  • 非常适合 Spring Boot

3️⃣ 确认 MySQL 是否启动成功

plain 复制代码
docker ps

看到 mysql8 就是成功了。

4️⃣ 进入 MySQL 容器

plain 复制代码
docker exec -it mysql8 mysql -uroot -p

密码:123456

五、Spring Boot 连接配置示例(你肯定用得上)

plain 复制代码
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/test_db?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8
    username: root
    password: 123456

六、如果你要远程连(Navicat / DBeaver)

确保:

plain 复制代码
ss -lntp | grep 3306

如果有防火墙:

plain 复制代码
sudo ufw allow 3306

七、你现在的服务器状态总结

✅ Docker 已安装✅ MySQL 通过 Docker 运行✅ 不污染系统✅ 随时可删除 / 重建✅ 完全符合你之前的 Spring Boot + MyBatis 场景

相关推荐
晓13134 分钟前
第七章 【C语言篇:文件】 文件全面解析
linux·c语言·开发语言
唐装鼠13 分钟前
Linux 下 malloc 内存分配机制详解
linux·malloc
予枫的编程笔记13 分钟前
【Linux入门篇】Linux运维必学:Vim核心操作详解,告别编辑器依赖
linux·人工智能·linux运维·vim操作教程·程序员工具·编辑器技巧·新手学vim
17(无规则自律)26 分钟前
深入浅出 Linux 内核模块,写一个内核版的 Hello World
linux·arm开发·嵌入式硬件
liu****39 分钟前
2.深入浅出理解虚拟化与容器化(含Docker实操全解析)
运维·c++·docker·容器·虚拟化技术
中二病码农不会遇见C++学姐41 分钟前
Linux下的.run文件
linux
予枫的编程笔记44 分钟前
【Linux入门篇】摆脱权限混乱困境:Linux用户组管理+sudo提权,一步到位
linux·linux运维·后端开发·linux用户管理·linux权限配置·chmod命令·sudo配置
一个人旅程~1 小时前
Dell n4020双系统分区步骤和linux优化操作
linux·windows·电脑
忆~遂愿1 小时前
CANN metadef 深度解析:动态形状元数据管理、图编译器接口规范与序列化执行机制
大数据·linux
予枫的编程笔记1 小时前
【Linux入门篇】Linux文件操作不用记满屏命令,掌握touch/cp/mv核心用法就够了
linux·tar·linux命令·tail·cat·linux文件管理·linux新手教程