windows docker-03-如何一步步学习 docker

阶段一:建立基础概念 (1-2天)

  1. 理解 Docker 是什么
    • 容器 vs 虚拟机:轻量级、资源隔离、快速启动。
    • Docker 的核心价值:一次构建,处处运行(解决环境一致性问题)。
  2. 核心概念
    • 镜像(Image):只读模板(如一个精简的 Linux 系统 + Nginx)。
    • 容器(Container):镜像的运行实例(一个隔离的进程)。
    • 仓库(Registry):存放镜像的地方(如 Docker Hub、阿里云镜像仓库)。

阶段二:动手实践基础操作 (3-5天)

  1. 安装 Docker

  2. 掌握核心命令

    bash 复制代码
    # 镜像操作
    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周)

  1. 编写 Dockerfile

    • 创建一个简单的 Python 应用镜像:

      dockerfile 复制代码
      # 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 .

  2. 理解容器数据持久化

    • 使用卷(Volume)保存数据:

      bash 复制代码
      docker run -d -v my-data:/data --name db redis
    • 绑定宿主机目录:

      bash 复制代码
      docker run -v /host/path:/container/path nginx
  3. 容器网络

    • 创建自定义网络并连接容器:

      bash 复制代码
      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周)

  1. 多容器应用(Docker Compose)
    • 编写 docker-compose.yml 部署 WordPress:

      yaml 复制代码
      version: '3'
      services:
        db:
          image: mysql:5.7
          volumes:
            - db_data:/var/lib/mysql
          environment:
            MYSQL_ROOT_PASSWORD: example
        wordpress:
          image: wordpress
          ports:
            - "8000:80"
          depends_on:
            - db
      volumes:
        db_data:
    • 启动:docker-compose up -d

相关推荐
Gain_chance4 小时前
34-学习笔记尚硅谷数仓搭建-DWS层最近一日汇总表建表语句汇总
数据仓库·hive·笔记·学习·datagrip
玉梅小洋4 小时前
Windows 10 Android 构建配置指南
android·windows
开源技术4 小时前
DNS详解——域名是如何解析的
http
yunfuuwqi4 小时前
OpenClaw✅真·喂饭级教程:2026年OpenClaw(原Moltbot)一键部署+接入飞书最佳实践
运维·服务器·网络·人工智能·飞书·京东云
迎仔5 小时前
C-算力中心网络隔离实施方法:怎么搞?
运维·网络
Gain_chance5 小时前
36-学习笔记尚硅谷数仓搭建-DWS层数据装载脚本
大数据·数据仓库·笔记·学习
代码游侠5 小时前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
XH华5 小时前
备战蓝桥杯,第九章:结构体和类
学习·蓝桥杯
枷锁—sha5 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Gain_chance6 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习