windows docker-03-如何一步步学习 docker
阶段一:建立基础概念 (1-2天)
- 理解 Docker 是什么
- 容器 vs 虚拟机:轻量级、资源隔离、快速启动。
- Docker 的核心价值:一次构建,处处运行(解决环境一致性问题)。
- 核心概念
- 镜像(Image):只读模板(如一个精简的 Linux 系统 + Nginx)。
- 容器(Container):镜像的运行实例(一个隔离的进程)。
- 仓库(Registry):存放镜像的地方(如 Docker Hub、阿里云镜像仓库)。
阶段二:动手实践基础操作 (3-5天)
- 安装 Docker
- 掌握核心命令
# 镜像操作 docker pull ubuntu:20.04 # 下载镜像 docker images # 查看本地镜像 docker rmi <镜像ID> # 删除镜像# 容器操作 docker run -it ubuntu:20.04 bash # 启动容器并进入交互模式 docker ps -a # 查看所有容器(包括已停止的) docker stop <容器ID> # 停止容器 docker rm <容器ID> # 删除容器
阶段三:深入理解镜像与容器 (1周)
- 编写 Dockerfile
- 创建一个简单的 Python 应用镜像:
# Dockerfile FROM python:3.9-slim WORKDIR /app COPY . . RUN pip install flask EXPOSE 5000 CMD ["python", "app.py"]
- 构建镜像:
docker build -t my-python-app .
- 创建一个简单的 Python 应用镜像:
- 理解容器数据持久化
- 使用卷(Volume)保存数据:
docker run -d -v my-data:/data --name db redis
- 绑定宿主机目录:
docker run -v /host/path:/container/path nginx
- 使用卷(Volume)保存数据:
- 容器网络
- 创建自定义网络并连接容器:
docker network create my-net docker run -d --net my-net --name web nginx docker run -it --net my-net busybox ping web
- 创建自定义网络并连接容器:
阶段四:进阶实战项目 (1-2周)
- 多容器应用(Docker Compose)
- 编写
docker-compose.yml
部署 WordPress:version: '3' services:db:image: mysql:5.7volumes:- db_data:/var/lib/mysqlenvironment:MYSQL_ROOT_PASSWORD: examplewordpress:image: wordpressports:- "8000:80"depends_on:- db volumes:db_data:
- 启动:
docker-compose up -d
- 编写