欢迎光临
我们一直在努力

Windows 11 Docker 安装与使用完全指南

Windows 11 Docker 教程

  • Windows 11 Docker 安装与使用完全指南
    • 1. 准备工作与环境要求
    • 2. 安装 WSL 2
    • 3. 下载并安装 Docker Desktop
    • 4. 首次启动与配置
    • 5. 运行你的第一个容器:Hello World
    • 6. 核心概念与常用命令
      • 6.1 核心概念
      • 6.2 常用 Docker 命令
    • 7. 实战:在容器中运行一个 Nginx Web 服务器
    • 8. 使用 Dockerfile 构建自定义镜像
    • 9. 使用 Docker Compose 管理多容器应用
    • 10. 常见问题与故障排除
    • 11. 总结

Windows 11 Docker 安装与使用完全指南

Docker 是一个开源的应用容器引擎,它允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中,从而实现快速部署和跨平台运行。对于 Windows 11 用户,尤其是开发者,掌握 Docker 能极大提升开发、测试和部署的效率。本教程将手把手教你如何在 Windows 11 上安装 Docker Desktop,并完成你的第一个容器化应用。

1. 准备工作与环境要求

在开始安装 Docker 之前,请确保你的 Windows 11 系统满足以下要求:

  • 操作系统版本:Windows 11 64位
  • 虚拟化支持:必须在 BIOS/UEFI 设置中开启 CPU 虚拟化技术(Intel VT-x 或 AMD-V)。
  • WSL 2:Docker Desktop for Windows 依赖于 Windows Subsystem for Linux 2 (WSL 2) 作为后端。这是推荐的运行方式,性能更好,资源占用更少。
  • 硬件虚拟化:在“任务管理器” -> “性能” -> “CPU” 中查看“虚拟化”是否已启用。

检查虚拟化是否开启:

  • 按下 Ctrl + Shift + Esc 打开任务管理器。
  • 切换到“性能”选项卡。
  • 查看“CPU”部分,确认“虚拟化”状态为“已启用”。
  • 如果未启用,需要重启电脑进入 BIOS/UEFI 设置(通常在开机时按 F2、F10、Del 等键),找到 Virtualization Technology (VT-x) 或 SVM 选项并启用它。

    2. 安装 WSL 2

    如果你的系统尚未安装 WSL 2 如下图,请按以下步骤操作。这是 Docker Desktop 运行的前提。 在这里插入图片描述

    方法一:使用命令行(推荐) 以管理员身份打开 PowerShell 或 Windows 终端,执行以下命令:

    # 启用适用于 Linux 的 Windows 子系统
    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

    # 启用虚拟机平台功能
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    #
    bcdedit /set hypervisorlaunchtype auto
    # 重启计算机
    Restart-Computer

    **重启后更新 WSL,再次打开管理员 PowerShell:**

    wsl update

    wsl set-defaultversion 2

    wsl status

    3. 下载并安装 Docker Desktop

  • 访问官网:打开 Docker 官网下载页面。
  • 选择版本:点击“Download for Windows”按钮。Docker Desktop 对个人和小型团队免费。
  • 运行安装程序:双击下载好的 Docker Desktop Installer.exe 文件。
  • 安装选项:
    • 在安装向导中,建议勾选“使用 WSL 2 而不是 Hyper-V”(如果你的系统支持)。
    • 其余选项保持默认即可。
  • 完成安装:安装完成后,点击“Close”并重启电脑(如果提示)。
  • 4. 首次启动与配置

  • 启动 Docker Desktop:在开始菜单中找到“Docker Desktop”并启动。首次启动需要一些时间来完成初始化。
  • 接受服务条款:首次启动会弹出 Docker 服务条款,阅读后点击“Accept”接受。
  • 登录账户(可选):你可以选择登录 Docker Hub 账户,以便拉取和推送镜像。也可以稍后跳过。
  • 检查状态:启动成功后,系统托盘区会出现 Docker 鲸鱼图标。右键点击图标,选择“Dashboard”可以打开管理界面。在 Dashboard 或终端中运行以下命令验证安装:
  • docker –version
    docker-compose –version

    如果成功显示版本号,说明 Docker 和 Docker Compose 已正确安装。

    5. 运行你的第一个容器:Hello World

    让我们通过一个简单的命令来验证 Docker 是否工作正常。

  • 打开 PowerShell、命令提示符或 Windows 终端。
  • 输入以下命令并回车:
  • docker run hello-world

    这个命令会执行以下操作:

    • Docker 客户端联系 Docker 守护进程。
    • 守护进程从 Docker Hub(默认的公共镜像仓库)拉取 hello-world 镜像。
    • 守护进程根据这个镜像创建一个新的容器并运行。
    • 容器执行后,会打印出一段欢迎信息并退出。

    如果你看到类似下面的输出,恭喜你,Docker 已经在你的 Windows 11 上成功运行了!

    Hello from Docker!
    This message shows that your installation appears to be working correctly.

    6. 核心概念与常用命令

    6.1 核心概念

    • 镜像 (Image):一个只读的模板,包含了运行应用所需的代码、运行时、库、环境变量和配置文件。例如 nginx, mysql, python:3.9。
    • 容器 (Container):镜像的运行实例。你可以创建、启动、停止、移动或删除容器。它是轻量级且可隔离的。
    • 仓库 (Repository):集中存放镜像的地方。Docker Hub 是最大的公共仓库。

    6.2 常用 Docker 命令

    # 镜像相关
    docker images # 列出本地所有镜像
    docker pull [镜像名]:[标签] # 从仓库拉取镜像,如 docker pull ubuntu:20.04
    docker rmi [镜像ID] # 删除本地镜像

    # 容器相关
    docker ps # 列出正在运行的容器
    docker ps -a # 列出所有容器(包括已停止的)
    docker run [选项] [镜像名] [命令] # 创建并运行一个新容器
    # 常用选项:
    # -d: 后台运行
    # -p [主机端口]:[容器端口]: 端口映射,如 -p 8080:80
    # -v [主机目录]:[容器目录]: 数据卷挂载
    # –name [名称]: 为容器指定一个名字
    # -it: 交互式终端,通常与 /bin/bash 结合进入容器
    docker start [容器名/ID] # 启动已停止的容器
    docker stop [容器名/ID] # 停止运行中的容器
    docker rm [容器名/ID] # 删除已停止的容器
    docker exec -it [容器名/ID] /bin/bash # 进入一个正在运行的容器

    # 查看信息与日志
    docker logs [容器名/ID] # 查看容器日志
    docker inspect [容器名/ID] # 查看容器详细信息

    7. 实战:在容器中运行一个 Nginx Web 服务器

    让我们运行一个更实用的例子:一个 Nginx Web 服务器。

  • 拉取 Nginx 镜像:

    docker pull nginx:latest

  • 运行 Nginx 容器:

    docker run -d -p 8080:80 –name my-nginx nginx

    • -d: 后台运行。
    • -p 8080:80: 将主机的 8080 端口映射到容器的 80 端口(Nginx 默认端口)。
    • –name my-nginx: 给容器起个名字。
  • 访问测试:打开浏览器,访问 http://localhost:8080。你应该能看到 Nginx 的欢迎页面。

  • 管理容器:

    docker ps # 查看运行中的容器,确认 my-nginx 在运行
    docker stop my-nginx # 停止容器
    docker start my-nginx # 再次启动容器
    docker rm my-nginx # 删除容器(需先停止)

  • 8. 使用 Dockerfile 构建自定义镜像

    Dockerfile 是一个文本文件,包含了一系列指令,用于自动构建 Docker 镜像。

    创建一个简单的 Python 应用示例:

  • 创建项目文件夹,例如 myapp,并在其中创建以下文件:

    • app.py (Python 应用)

    from flask import Flask
    app = Flask(__name__)

    @app.route('/')
    def hello():
    return 'Hello Docker from Windows 11!'

    if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)

    • requirements.txt (依赖文件)

    flask==2.3.3

    • Dockerfile (构建指令文件)

    # 使用官方 Python 运行时作为父镜像
    FROM python:3.9-slim

    # 设置工作目录
    WORKDIR /app

    # 将当前目录内容复制到容器的 /app 下
    COPY . /app

    # 安装 requirements.txt 中指定的依赖
    RUN pip install –no-cache-dir -r requirements.txt

    # 暴露端口 5000
    EXPOSE 5000

    # 定义环境变量
    ENV FLASK_APP=app.py

    # 容器启动时运行 app.py
    CMD ["flask", "run", "–host=0.0.0.0"]

  • 构建镜像:在 myapp 目录下打开终端,运行:

    docker build -t my-python-app .

    -t 参数为镜像打标签,. 表示使用当前目录的 Dockerfile。

  • 运行自定义镜像:

    docker run -d -p 5000:5000 –name my-app my-python-app

  • 访问 http://localhost:5000,你将看到 “Hello Docker from Windows 11!”。

  • 9. 使用 Docker Compose 管理多容器应用

    Docker Compose 用于定义和运行多容器的 Docker 应用。通过一个 docker-compose.yml 文件来配置所有服务。

    示例:一个包含 Web 应用和 Redis 的简单组合

  • 在项目根目录创建 docker-compose.yml:

    version: '3.8'
    services:
    web:
    build: .
    ports:
    "5000:5000"
    depends_on:
    redis
    redis:
    image: "redis:alpine"

  • 启动所有服务(在 docker-compose.yml 所在目录运行):

    docker-compose up -d

  • 停止并移除所有服务:

    docker-compose down

  • 10. 常见问题与故障排除

    • Docker Desktop 无法启动:检查 WSL 2 是否安装正确,虚拟化是否开启。可以尝试在 PowerShell(管理员)中运行 wsl –update 和 wsl –shutdown,然后重启 Docker Desktop。
    • 镜像拉取慢:配置国内镜像加速器。在 Docker Desktop 设置 -> Docker Engine 中,添加以下配置(如阿里云、中科大镜像):{
      "registry-mirrors": [
      "https://your-mirror.mirror.aliyuncs.com"
      ]
      }
    • 端口被占用:使用 netstat -ano | findstr :端口号 查找占用端口的进程,并更改 Docker 容器的映射端口或停止冲突进程。
    • 磁盘空间不足:Docker 镜像和容器会占用空间。定期使用 docker system prune -a 清理未使用的镜像、容器、网络和构建缓存(谨慎使用,会删除所有未使用的资源)。

    11. 总结

    通过本教程,你已经在 Windows 11 上成功搭建了 Docker 环境,并学会了运行容器、构建镜像和使用 Docker Compose 的基本操作。Docker 的强大之处在于其一致性和可移植性,它能将你的开发环境与生产环境对齐,避免“在我机器上能跑”的问题。

    下一步,你可以探索:

    • 学习更复杂的 Dockerfile 指令。
    • 将你的应用部署到云服务器(如使用 Docker 的云服务)。
    • 学习 Docker 网络和数据卷的深入用法。
    • 探索 Kubernetes 进行容器编排。

    祝你容器化之旅顺利!

    赞(0)
    未经允许不得转载:171主机测评 » Windows 11 Docker 安装与使用完全指南
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址