从 0 到 1 快速掌握 Docker 基本操作

写在前面

很多人学习 Docker 时,都停留在"知道是容器技术"的阶段,却始终没有"动起来"。如果你想:

  • 本地搭建 Docker 环境
  • ️ 学会构建和运行容器
  • 用几条命令就能部署一个 Web 应用

那么这一讲你一定要看完。本文将手把手教你:

✅ 如何安装 Docker(Windows、macOS、Linux)

✅ 最常用的 20+ 命令解释和实践

✅ 最容易踩坑的安装问题与解决方案


一、Docker 安装指南(各平台)

Linux 系统(推荐 Ubuntu)

Step 1:更新依赖包

bash 复制代码
sudo apt update
sudo apt install ca-certificates curl gnupg

Step 2:添加官方 GPG 密钥和仓库源

bash 复制代码
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

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

Step 3:安装 Docker 引擎

bash 复制代码
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

Step 4:测试安装

bash 复制代码
sudo docker run hello-world

提示:可通过 sudo usermod -aG docker $USER 让当前用户免 sudo 运行 docker


macOS 与 Windows 安装

macOS 用户注意:

  • macOS 使用的是基于虚拟机的 Docker Desktop,不是原生运行

Windows 用户注意:

  • 需开启 WSL2 支持(或 Hyper-V)
  • Windows Home 推荐配合 WSL2 + Docker Desktop

二、最常用 Docker 命令全解析

以下是你日常开发中最常用的命令,分为 5 类:


1. 镜像相关命令

命令 说明
docker pull nginx 从远端拉取镜像
docker images 查看本地镜像列表
docker rmi nginx 删除镜像
docker build -t myapp:v1 . 构建镜像(基于 Dockerfile)

2. 容器相关命令

命令 说明
docker run -d -p 80:80 nginx 后台运行容器并映射端口
docker ps 查看运行中的容器
docker ps -a 查看所有容器(含已退出)
docker stop 容器ID 停止容器
docker rm 容器ID 删除容器
docker exec -it 容器ID bash 进入容器内部交互

3. 数据卷命令(数据持久化)

命令 说明
docker volume create mydata 创建数据卷
docker volume ls 查看卷列表
docker run -v mydata:/data nginx 容器挂载数据卷

4. 网络命令(多容器通信)

命令 说明
docker network ls 查看网络
docker network create mynet 创建网络
docker run --network=mynet ... 指定容器使用自定义网络

5. 容器管理与资源限制

命令 说明
docker stats 实时查看容器 CPU/内存使用情况
docker logs 容器ID 查看容器日志
docker restart 容器ID 重启容器

三、实战:一键部署 Nginx + HTML 页面

bash 复制代码
# 新建工作目录并编写 index.html
mkdir web && cd web
echo "<h1>Hello Docker!</h1>" > index.html

# 使用 nginx 容器挂载本地文件
docker run -d -p 8080:80 -v $PWD:/usr/share/nginx/html nginx

访问 http://localhost:8080,页面即显示 Hello Docker!


️ 四、常见安装问题排查

问题 原因 解决方案
docker: command not found 未安装 / 环境变量未生效 确认路径或重启 shell
Got permission denied 当前用户无权限 使用 sudo 或添加用户组
Docker Desktop 启动慢 / 崩溃 系统资源不足 / WSL 配置问题 调整资源限制、重装 Docker Desktop
镜像下载慢 默认源在国外 配置国内镜像源,如阿里云、DaoCloud

五、✅ 总结

  • Docker 安装因系统略有不同,但核心流程一致
  • 掌握常用命令能快速上手日常开发与部署
  • 熟悉数据卷、网络、资源控制,有助于容器化复杂系统
  • 实战操作是最好的老师:多 run、多 exec、多试错!
相关推荐
枕星而眠8 分钟前
Linux 四大进程/线程同步锁详解:互斥锁、读写锁、条件变量、文件锁
linux·c语言·后端·ubuntu·学习方法
IT_陈寒13 分钟前
Vite动态导入把我坑惨了,原来要这样用才对
前端·人工智能·后端
darkdragonking1 小时前
Docker(五)OpenEuler22.03 安装docker ce、排坑
运维·docker·容器
计算机魔术师2 小时前
【AI面试八股文 Vol.3.4:训练微调部署选型】从预训练到量化部署:LLM 工程落地如何做模型选择
人工智能·后端·面试·架构·moe·vol.3.3·vol.3.4
明月_清风2 小时前
从零到一构建生产级 AI Agent:架构拆解 × Python 高并发实战 × 技术选型方法论
后端·agent
金銀銅鐵3 小时前
[Java] 如何理解 class 文件中字段的 access flags?
java·后端
不懒不懒3 小时前
基于 Flask —— 异步任务处理接口服务
后端·python·flask
Xidaoapi4 小时前
Python FastAPI性能优化实战:8个让你的API快3倍的技巧
后端·程序员
William Dawson4 小时前
【通俗易懂!Spring四大核心注解源码解读:@Configuration、@ComponentScan、@Import、@EnableXXX实战】
java·后端·spring
倚栏听风雨4 小时前
Mac 本地开发:用 Nginx 配置自定义域名代理到本地服务
后端