admin 管理员组

文章数量: 1184232

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、什么是Docker?
    • 举个栗子🌰
    • Docker的作用一句话总结
    • 具体能解决什么问题?
  • 二、安装步骤
  • 三、docker镜像源设置
  • 总结


前言

docker是一个很好用的工具,我本人第一次接触docker是在做RL
安装nccl包时出现不兼容windows平台的问题,在仙人指路下学习了docker的用法。目前我只会用docker快速部署开发环境,别的暂时还没学。
安装docker之前应该先安装WSL2,这里有一个非常好的博客,参照该博客内容安装WSL2后,再按照本文内容安装Docker,基本可以达到和我一样的效果。
WSL2安装: https://docs.docker/desktop/setup/install/windows-install/


一、什么是Docker?

举个栗子🌰

假设你是一个厨师👨🍳,要做一个复杂的菜(比如火锅)。你需要:锅、电磁炉、食材、调料、碗筷… 但每次换个厨房,你都要重新找齐这些东西,甚至可能遇到「调料不齐」「锅的尺寸不对」等问题。

用Docker,就相当于你直接把整个厨房的工具和食材打包成一个魔法冰箱。换到任何新厨房,只要打开这个冰箱,立刻就能开始做菜——所有东西的位置、品牌、版本都和你习惯的一模一样,完全不用担心环境问题。


Docker的作用一句话总结

「把软件和它的运行环境打包成一个“集装箱”📦,让它能在任何地方快速、一致地运行。」


具体能解决什么问题?

1️⃣ 环境不一致的抓狂

  • 场景:你的程序在电脑上运行正常,但发给别人就报错:“在我这明明能用的啊!”
  • Docker:把程序+操作系统+配置全部打包,别人用这个包运行时,环境和你100%相同,彻底告别“玄学问题”。

2️⃣ “安装太麻烦”的噩梦

  • 场景:装个软件要配环境、装依赖、改配置… 步骤多到想砸电脑。
  • Docker:直接下载别人打包好的“软件集装箱”,一键运行,像点外卖一样简单🍱。

3️⃣ 一台机器开“多重宇宙”

  • 场景:想同时运行Python 2和Python 3?或者让两个软件用不同版本的数据库?
  • Docker:每个软件住在独立的“集装箱”里,互相隔离,像平行世界一样互不干扰🚧。

4️⃣ 快速复制,瞬间分身

  • 场景:网站访问量暴增,需要临时开10台服务器。
  • Docker:直接复制10个“集装箱”同时运行,比传统虚拟机快得多,资源还省电⚡。

举个实际例子🌍

  • 没Docker时:小明开发了一个网站,交给运维时附带了10页的安装文档。运维安装时遇到各种报错,两人来回扯皮3天。
  • 用Docker后:小明把网站+环境打包成一个镜像。运维只需一条命令 docker run,5秒启动,全程无报错🎉。

总结成三句话

  1. 打包环境:把你的软件和它需要的一切(系统、工具、配置)锁进一个“盒子”。
  2. 到处运行:这个盒子能在任何支持Docker的地方秒开,无需重新配置。
  3. 隔离省资源:每个盒子互相独立,不抢资源,不打架,用完还能一键清理🗑️。
    以上均为deepseek自动生成

二、安装步骤

参考:
Docker Doc官方文档:https://docs.docker/desktop/setup/install/windows-install/
CSDN文章:Windows系统如何将Docker安装到指定盘


进入Docker Doc网页,下载对应系统的安装包,Windows平台一般情况下下载 -x86_64版本


之后打开安装包对应的存储路径

然后在地址栏输入以下内容,以在当前位置打开windows命令行

cmd



之后输入以下代码,注意命令里的两个路径应该各不相同,且均为空文件夹,路径里不要有中文。
第一个路径是安装docker的路径,第二个路径是存放docker镜像的路径。
这个命令可以帮助我们按装docker到非系统盘。

start /w "" "Docker Desktop Installer.exe" install^
 --backend=wsl-2^
 --installation-dir=D:\Your\own\local^
 --wsl-default-data-root=D:\Your\own\local^
 --accept-license

命令执行后,安装程序就会自动执行,如果有弹出任何其它弹窗,点yes/ok就好。

三、docker镜像源设置

打开docker,点击顶部导航栏里的齿轮形图标进入设置,再找到Docker Engine。

将下面的代码复制粘贴进红色圈里,主要是补充国内镜像源,以便docker拉取一些pytorch,nvidia发布的基础镜像。
同时,由于不可抗力因素,国内的镜像源大部分不稳定,所以可以通过以下博客内容查阅可用的docker镜像源,并对以下代码中"registry-mirrors"[]里的网址进行增删,注意网址的格式。docker镜像:国内仍然可用docker镜像源汇总(实时更新)

{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "debug": false,
  "experimental": false,
  "insecure-registries": [],
  "registry-mirrors": [
    "https://ufe3o0ts.mirror.aliyuncs/",
    "https://docker.1ms.run/",
    "https://docker.xuanyuan.me/",
    "https://dislabaiot.xyz/",
    "https://docker.sunzishaokao/",
    "https://hub.rat.dev/",
    "https://doublezonline.cloud/",
    "https://dislabaiot.xyz/",
    "https://xdark.top"
  ]
}

总结

本文主要讲述了windows平台上如何在指定位置安装Docker,存放Docker images,并进行镜像源的配置。

本文标签: 镜像 平台上 Win docker