零基础搞定Docker手动安装Linux:从环境准备到验证全
前置准备
在开始 Docker手动安装Linux 之前,请确认你的机器满足以下条件:
- 操作系统:Windows、macOS 或 Linux 均可,本文以 Ubuntu 20.04 为例演示。
- Docker 已安装:如果你还没安装 Docker,请先参考官方文档或直接运行以下命令一键安装。
# Ubuntu/Debian 安装 Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh- 网络正常:确保能访问 Docker Hub 或配置了镜像加速器。
- 磁盘空间:至少预留 2GB 空间给 Linux 镜像和容器数据。
注意:如果你使用的是 Windows,请提前启用 WSL 2 并安装 Docker Desktop。macOS 用户直接下载 Docker Desktop 即可。
---
分步操作
下面按顺序执行每一步,所有命令都可以直接复制到终端运行。
第一步:拉取 Linux 镜像
使用官方 Ubuntu 镜像作为示例,你也可以替换成 centos、debian 等。
docker pull ubuntu:latest验证镜像已下载:
docker images应该看到 ubuntu 镜像及其大小。
第二步:创建并启动容器
用下载的镜像运行一个容器,并进入交互终端。
docker run -it --name my-linux ubuntu /bin/bash-it:让容器以交互模式运行。--name my-linux:给容器取名,方便管理。ubuntu:镜像名。/bin/bash:启动后直接进入 Bash Shell。
执行后,你会看到 root@xxx:/# 提示符,表示已经成功进入 Linux 容器内部。
第三步:在容器内执行基本操作
现在你可以在容器里玩转 Linux 了:
cat /etc/os-release # 查看系统版本
apt update && apt install -y vim curl # 安装常用工具第四步:退出容器并保持运行
输入 exit 会退出并停止容器。
如果想保持后台运行,先按 Ctrl+P 再按 Ctrl+Q 分离而不停止。
# 如果已经退出,启动停止的容器
docker start my-linux
再次进入容器
docker exec -it my-linux /bin/bash
---
避坑指南
- 镜像拉取慢:配置 Docker 国内镜像加速(阿里云、中科大等)。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker - 容器启动后自动退出:通常是因为后台进程结束。使用
-d参数让容器后台运行,再用exec进入。
docker run -d --name my-linux-2 ubuntu sleep infinity
docker exec -it my-linux-2 /bin/bash- Docker权限不足:如果提示
permission denied,请将当前用户加入 docker 组:
sudo usermod -aG docker $USER
重新登录或重启后生效
- 磁盘空间不足:定期清理不再使用的镜像和容器:
docker system prune -a---
高频问题解答
Q1:Docker手动安装Linux和虚拟机有什么区别?
A:Docker 容器共享宿主机内核,启动快、资源占用小;虚拟机需要完整操作系统,更重但隔离性更强。如果你只是做开发测试或运行服务,Docker 足够。
Q2:我能在容器里安装桌面环境吗?
A:可以但一般不推荐。Docker 主要面向无头服务,安装桌面需要额外配置 VNC,更适合 LXD 或 KVM。如果你坚持,搜索“docker ubuntu desktop vnc”有教程。
Q3:如何让容器保留修改?
A:用 docker commit 将当前容器保存为新镜像。但更标准的方式是使用 Dockerfile 构建镜像。
docker commit my-linux my-ubuntu-custom---
效果验证
- 验证容器内 Linux 已运行:
docker ps看到 my-linux 的 STATUS 为 Up。
- 验证Linux版本:
进入容器后执行 cat /etc/os-release,应显示 Ubuntu 版本信息。
- 验证网络可用:
在容器内运行 ping -c 3 8.8.8.8,看到成功响应即网络正常。
- 验证可执行命令:
安装一个软件包(如 vim)成功,说明包管理器正常工作。
如果你在完全没接触过 Docker 的情况下按本文操作,全程应当不超过 10 分钟即可得到一个可用的 Linux 环境。后续你可以基于这个容器继续学习文件管理、进程控制等操作。
如果你正在处理 Docker手动安装Linux,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。