Docker 安装 Ubuntu(详细教程)

为什么选择 Docker 安装 Ubuntu?

在开发环境中,我们常常面临一个难题:不同项目依赖的系统环境千差万别。比如,一个项目需要 Ubuntu 20.04,另一个却依赖 Ubuntu 18.04,而你的主机系统是 macOS 或 Windows。这时候,直接在本地安装多个系统显然不现实,也容易造成环境混乱。

这时候,Docker 就成了绝佳的解决方案。它像一个“虚拟机盒子”,但比传统虚拟机更轻量、启动更快。通过 Docker 安装 Ubuntu,你可以在不改变主机系统的情况下,快速创建一个干净、隔离的 Linux 环境,用来跑脚本、测试程序、部署服务。

简单来说,Docker 安装 Ubuntu,就是让你“一键拥有一个真实的 Ubuntu 系统”,而不需要物理安装或配置复杂的虚拟机。这不仅节省时间,还能确保开发、测试、生产环境的一致性。


安装 Docker 环境准备

在开始 Docker 安装 Ubuntu 之前,你需要先确保你的操作系统已经安装了 Docker。Docker 官方支持 Windows、macOS 和 Linux,下面以常见平台为例。

Windows 用户

打开 Docker Desktop 官网 下载安装包,安装过程非常直观。安装完成后,打开 Docker Desktop,它会自动启动后台服务。

⚠️ 注意:首次启动可能需要等待几分钟,因为它会下载必要的镜像和初始化系统。

macOS 用户

同样访问 Docker Desktop 官网,下载适用于 macOS 的 .dmg 文件。双击安装,拖入 Applications 文件夹即可。启动后,Docker 会自动运行。

Linux 用户(Ubuntu/Debian)

如果你的系统已经是 Linux,可以通过以下命令安装 Docker:

sudo apt update

sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update

sudo apt install -y docker-ce docker-ce-cli containerd.io

sudo usermod -aG docker $USER

✅ 提示:执行完 usermod 命令后,建议重新登录终端,否则可能仍需加 sudo


拉取并运行 Ubuntu 镜像

现在 Docker 已经准备就绪,接下来就是真正的“Docker 安装 Ubuntu”环节。这里的关键是使用 docker pull 拉取官方 Ubuntu 镜像,然后通过 docker run 启动一个容器。

1. 拉取 Ubuntu 镜像

docker pull ubuntu:22.04

🔍 解释:ubuntu:22.04 是镜像名称和标签。22.04 表示 Ubuntu 的版本号,类似于版本号 1.0、2.0。Docker 会从远程仓库下载这个镜像,首次可能需要几分钟,取决于网络速度。

2. 启动 Ubuntu 容器

docker run -it --name my-ubuntu ubuntu:22.04 /bin/bash

✅ 参数详解:

  • -i:保持标准输入打开,即使没有连接终端也能交互
  • -t:分配一个伪终端(TTY),让你能输入命令
  • --name my-ubuntu:给容器起个名字,方便管理
  • ubuntu:22.04:指定使用的镜像
  • /bin/bash:进入容器后执行的命令,这里是启动 bash shell

💡 比喻:你可以把容器想象成一个“临时的 Linux 小盒子”,你打开它,就能在里面自由操作,就像在真实的电脑上一样。

运行后,你会看到命令行提示符变成 root@<容器ID>:/#,表示你已经进入了 Ubuntu 环境。


在容器中操作 Ubuntu 系统

现在你已经成功进入 Ubuntu 容器,可以像操作真实系统一样使用各种命令。

常用系统操作命令

cat /etc/os-release

pwd

whoami

apt update

apt install -y curl

dpkg -l | grep curl

✅ 提示:在容器中操作时,记得每次安装软件前先执行 apt update,否则会提示“无法找到包”。

实际案例:安装 Python 3 并运行脚本

假设你想测试一段 Python 脚本,但你主机上没有 Python。Docker 安装 Ubuntu 后,你可以这样操作:

apt update

apt install -y python3 python3-pip

python3 --version

echo 'print("Hello from Docker Ubuntu!")' > hello.py

python3 hello.py

输出结果应为:

Hello from Docker Ubuntu!

🎯 这个例子展示了 Docker 安装 Ubuntu 的核心价值:快速搭建一个干净的开发环境,避免污染主机系统。


管理容器生命周期

容器是临时的,退出后就会停止。但 Docker 提供了丰富的管理命令,让你可以灵活控制容器。

查看正在运行的容器

docker ps

✅ 输出示例:

CONTAINER ID   IMAGE         COMMAND       CREATED        STATUS       PORTS       NAMES
abc123def456   ubuntu:22.04  "/bin/bash"   2 minutes ago    Up 2 minutes               my-ubuntu

退出容器

Ctrl + D 或输入 exit 命令,即可退出当前容器。

重新进入容器

如果容器已经停止,你可以用以下命令重新启动并进入:

docker start -i my-ubuntu

🔁 docker start 启动容器,-i 保持标准输入打开,my-ubuntu 是容器名字。

删除容器

当你不再需要某个容器时,可以删除它:

docker stop my-ubuntu

docker rm my-ubuntu

💡 小贴士:删除容器不会删除镜像,下次仍可用 docker run 重新创建。


高级用法:持久化数据与挂载目录

有时候你希望容器内的文件能保存下来,比如写入配置文件、保存日志。这时就需要“挂载目录”。

挂载本地目录到容器

docker run -it --name my-ubuntu -v /home/user/projects:/app ubuntu:22.04 /bin/bash

🔍 -v 参数是“volume”的缩写,表示挂载。格式为 本地路径:容器路径

🌟 优势:你在本地修改文件,容器内也能看到,实现“开发即同步”。

挂载配置文件

docker run -it -v /home/user/config.conf:/etc/myapp/config.conf ubuntu:22.04 /bin/bash

✅ 这种方式特别适合部署服务或运行脚本时传递配置。


总结与最佳实践

通过本文,你已经掌握了“Docker 安装 Ubuntu”的完整流程:从安装 Docker、拉取镜像、启动容器、运行命令,到管理生命周期和数据挂载。

✅ 最佳实践建议:

  1. 使用特定版本标签:如 ubuntu:20.04 而非 latest,避免版本不稳定。
  2. 命名容器:用 --name 给容器起有意义的名字,便于管理。
  3. 避免长期运行容器:容器应作为临时环境使用,任务完成后及时停止并删除。
  4. 合理使用挂载:挂载本地目录用于开发,但避免挂载敏感系统路径。
  5. 定期清理无用镜像:运行 docker system prune 清理缓存和未使用的镜像。

结语

Docker 安装 Ubuntu,不仅是技术上的便利,更是一种现代开发思维的体现。它让你摆脱环境依赖的困扰,专注于代码本身。无论你是初学者尝试 Linux 命令,还是中级开发者搭建测试环境,Docker 都能为你提供一个稳定、安全、高效的“虚拟 Linux 沙盒”。

下一次当你遇到“这个项目在别的电脑上跑不起来”的问题时,不妨试试用 Docker 安装 Ubuntu,快速搭建一致的运行环境。你会发现,开发效率瞬间提升,环境问题再也不用愁。