Windows Docker 入门教程

317 阅读4分钟

1. 什么是 Docker?

Docker 是一个轻量级的容器化平台,它通过提供一个虚拟化的环境,让开发者可以将应用及其依赖打包在一起,并在任何环境中一致运行。Docker 容器与虚拟机不同,容器共享宿主机的操作系统内核,但具有相互隔离的运行环境,这使得容器非常轻便,启动速度快。

2. Docker 安装与配置

2.1 安装 Docker Desktop for Windows

在 Windows 上使用 Docker 最常见的方式是通过 Docker Desktop。Docker Desktop 是一个官方的桌面客户端,它可以在 Windows 系统上提供 Docker 引擎并简化容器化应用的管理。

2.1.1 安装 Docker Desktop

  1. 下载 Docker Desktop

    • 访问 Docker 官方下载页面
    • 根据你的 Windows 版本(Windows 10 或 Windows 11)选择合适的安装包进行下载。
  2. 安装 Docker Desktop

    • 双击下载的安装包进行安装。
    • 安装过程中,如果出现提示,选择启用 WSL 2(Windows Subsystem for Linux 2),这是 Docker 在 Windows 上运行的必备组件。你也可以选择直接通过 Hyper-V 来运行 Docker,但 WSL 2 提供了更高效的性能。
    • 完成安装后,重启计算机(如果安装提示要求)。

2.1.2 启动 Docker Desktop

  • 在安装完成后,你可以在 Windows 的开始菜单中找到 Docker Desktop 图标,点击启动。
  • 第一次启动时,Docker Desktop 可能需要一些时间来进行初始化。完成后,你会看到 Docker 的图标出现在系统托盘区域,表示 Docker 已经成功启动。

2.1.3 配置 WSL 2

WSL 2 是 Docker 在 Windows 上运行的一个关键技术,它为容器提供了一个更为原生的 Linux 内核,从而提升了性能和兼容性。

  1. 启用 WSL 2

    • 确保 Windows 10 或 Windows 11 启用了 WSL 2。你可以通过 PowerShell 执行以下命令来启用 WSL 2:

      wsl --install
      
  2. 选择 Linux 发行版

    • Docker Desktop 默认会安装 Ubuntu 作为 WSL 2 的 Linux 发行版。如果你没有安装 Ubuntu,可以在 Windows Store 中找到并安装。
  3. 在 Docker Desktop 设置中选择 WSL 2

    • 启动 Docker Desktop,进入设置页面,选择 "General",在 "Use the WSL 2 based engine" 选项中启用 WSL 2。

2.1.4 测试 Docker 是否安装成功

打开命令行(PowerShell 或 Command Prompt),运行以下命令:

docker --version

你应该会看到 Docker 版本信息,如:

Docker version 27.2.0, build 3ab4256

然后,尝试运行一个简单的 Docker 容器,检查 Docker 是否正常工作:

docker run hello-world

如果输出了 "Hello from Docker!" 的消息,说明 Docker 已经成功安装并运行。

3. Docker 基本概念

在深入使用 Docker 之前,我们需要理解一些 Docker 的核心概念。

3.1 镜像(Image)

镜像是 Docker 容器的基础,它类似于应用程序的快照。镜像包含了运行容器所需的所有代码、库、依赖等。镜像是不可变的,并且可以通过 Docker Hub 等平台进行共享和分发。

  • 创建镜像:可以通过 Dockerfile 来定义如何构建镜像。

  • 拉取镜像:可以从 Docker Hub 或其他镜像仓库拉取公开的镜像。

    docker pull ubuntu
    

3.2 容器(Container)

容器是运行中的镜像。容器是轻量级的、可执行的独立环境,运行时会使用镜像作为模板,并在容器内执行应用程序。每个容器都拥有独立的文件系统和网络环境,但共享宿主机的操作系统内核。

  • 启动容器:从镜像启动一个新的容器。

    docker run -d --name my_container ubuntu
    

3.3 Dockerfile

Dockerfile 是一个文本文件,定义了如何构建 Docker 镜像的步骤。通过 Dockerfile,你可以指定基础镜像、安装依赖、复制文件、运行命令等。

3.4 容器与镜像的区别

特性镜像容器
定义镜像是一个只读的模板,用于创建容器容器是镜像的运行实例,具有读写能力
生命周期静态,镜像不会改变动态,容器的生命周期从创建到销毁
存储镜像存储在本地或远程仓库中容器会在本地保存数据和文件

4. 基本命令使用

4.1 常用 Docker 命令

以下是一些常用的 Docker 命令,帮助你快速上手。

  • 拉取镜像

    docker pull <image_name>
    
  • 查看本地镜像

    docker images
    
  • 运行容器

    docker run -d --name <container_name> <image_name>
    
  • 列出运行中的容器

    docker ps
    
  • 进入正在运行的容器

    docker exec -it <container_name> /bin/bash
    
  • 停止容器

    docker stop <container_name>
    
  • 删除容器

    docker rm <container_name>
    
  • 删除镜像

    docker rmi <image_name>