Docker 在 Windows 上的使用指南

Docker 在 Windows 上的使用指南

Docker 是一种强大的容器化平台,广泛应用于开发和生产环境。本文将介绍如何在 Windows 系统上使用 Docker,包括容器的启动、常见问题的排查,以及网络问题的解决方法。

1. Docker 安装与配置

在开始使用 Docker 之前,确保已经在 Windows 上安装了 Docker Desktop。安装完成后,确保 Docker 正常启动并处于运行状态。

1.1 下载 Docker Desktop

  1. 访问 Docker 官方网站:Docker Desktop 下载页面.(需要魔法)
  2. 点击 "Download for Windows" 进行下载。

1.2 安装 Docker Desktop

  1. 双击下载的安装程序(.exe 文件)开始安装。
  2. 在安装过程中,选择"Enable WSL 2"选项以启用 Windows Subsystem for Linux 2(如果你使用的是 Windows 10 或 Windows 11)。这是 Docker 在 Windows 上的推荐配置。
  3. 完成安装后,重启电脑以应用更改。

1.3 配置 Docker Desktop

  1. 启动 Docker Desktop。
  2. 根据需要完成初始配置,包括登录 Docker Hub 账户。
  3. 确保 Docker Desktop 的状态显示为 "Running"。

2. Docker 安装与配置

在开始使用 Docker 之前,确保 Docker Desktop 已经正常运行。

并且在系统环境配置中添加docker的路径

2.1 确认 Docker 已启动

你可以通过以下方式确认 Docker Desktop 是否正常运行:

  1. 检查系统托盘右下角是否有 Docker 的鲸鱼图标。
  2. 点击该图标,确保状态显示为 "Running"。

2.2 检查 Docker 命令是否可用

在命令行工具(CMD、PowerShell 或 Windows Terminal)中输入以下命令来确认 Docker 是否已正确安装和配置:

bash 复制代码
docker --version

如果 Docker 安装正常,你将会看到 Docker 的版本号输出。

2. 启动 Nginx 容器

假设你已经安装并配置好了 Docker,现在我们尝试运行一个简单的 Nginx 容器。

2.1 运行 Nginx 容器

使用以下命令启动 Nginx 容器(如果命令没有反应,用管理员运行命令行工具),并将主机的 8080 端口映射到容器的 80 端口:

bash 复制代码
docker run -d -p 8080:80 --name my-nginx nginx

2.2 检查容器状态

如果命令没有输出任何内容,可以通过以下命令查看容器是否正在运行:

bash 复制代码
docker ps

你应该会看到类似以下的输出:

2.3 访问 Nginx

打开浏览器,访问 http://localhost:8080,你应该会看到 Nginx 的默认欢迎页面。

3. 常见问题排查

3.1 镜像未找到

当你运行 docker run 命令时,可能会出现以下提示:

bash 复制代码
Unable to find image 'nginx
' locally

这表示本地没有找到所需的镜像,Docker 正在尝试从 Docker Hub 下载。如果没有任何后续反应,可以手动执行以下命令下载镜像:

bash 复制代码
docker pull nginx

3.2 配置国内镜像加速器

如果镜像下载速度较慢或没反应,可以开启代理魔法,或者使用国内的镜像加速器。以下是国内镜像加速器配置方法:

  1. 打开 Docker Desktop 的设置,点击 Docker Engine 选项卡。
  2. daemon.json 配置文件中添加以下内容:
json 复制代码
   {
     "registry-mirrors": [
       "https://<你的阿里云加速器地址>"
     ]
   }

3.保存并重启 Docker。

4. 总结

通过以上步骤,你应该能够在 Windows 上成功运行 Docker 并启动 Nginx 容器。遇到问题时,可以通过检查容器状态、查看日志和配置镜像加速器等方法进行排查。

相关推荐
yunken2841 分钟前
docker容器保存为不依赖基础镜像的独立镜像方法
java·docker·容器
langmeng1101 小时前
使用docker在3台服务器上搭建基于版本redis 6.x的一主两从模式
运维·redis·docker·容器·集群
leblancAndSherry2 小时前
Gitlab + Jenkins 实现 CICD
linux·运维·docker·kubernetes·gitlab·jenkins
至善迎风5 小时前
Windows系统中如何使用符号链接将.vscode等配置文件夹迁移到D盘(附 CMD & PowerShell 双版本命令)
ide·windows·vscode
old_power5 小时前
在 Windows 系统下配置 VSCode + CMake + Ninja 进行 C++ 或 Qt 开发
c++·windows·vscode·cmake·ninja
糯米导航5 小时前
ava多线程实现HTTP断点续传:原理、设计与代码实现
windows·http·iphone
嘟嘟实验室6 小时前
SAM2Long本地部署,视频分割处理,绿幕抠像,超长视频支持
windows·python·音视频
dntktop6 小时前
音乐“穿梭机”AudioRelay,让你的音频“无缝对接”
运维·windows·电脑·音视频
脑瓜嗡6 小时前
Docker部署SpringBoot项目
spring boot·docker·容器
容器魔方7 小时前
KubeCon China 2025 | 与KubeEdge畅聊毕业经验与创新未来
云原生·容器·云计算