Docker简介
简而言之,Docker 是一个可供开发者通过容器(container)来构建,运行和共享应用(application)的平台。用容器来部署应用被称为集装箱化(containerization)。
- Docker 就像一个盒子,里面可以装很多物件,如果需要某些物件,可以直接将该盒子拿走,而不需要从该盒子中一件一件的取。
- Docker中文社区、Docker中文文档
Docker 包括三个基本概念:
- 镜像(Image)
- Docker的镜像概念类似于虚拟机里的镜像(比如
.ISO
文件),是一个只读的模板,一个独立的文件系统,包括运行容器所需的数据,可以用来创建新的容器。 - 例如:一个镜像可以包含一个完整的 ubuntu 操作系统环境,里面仅安装了MySQL或用户需要的其它应用程序。
- 这里的镜像就如下方虚拟机创建时候使用的镜像类似。这个镜像便于移动,并且这个镜像我们可以交给任何人使用,其他人使用的时候也很方便,只需要将其实例化即可。
- Docker的镜像概念类似于虚拟机里的镜像(比如
- 容器(Container)
- Docker容器是由Docker镜像创建的运行实例,类似VM虚拟机,支持启动,停止,删除等。
- 每个容器间是相互隔离的,容器中会运行特定的应用,包含特定应用的代码及所需的依赖文件。
- 容器就类似与虚拟机中我们创建好的虚拟机系统,之后我们所有的操作都是在容器中进行的,我们的程序也是运行在容器中。
- 仓库(Repository)
- 镜像便于传播,而仓库就是专门用来传播这些镜像的地方,他有点类似与Github,或者你可以把他看成一个存放各种镜像的镜像商店
- Docker官方的仓库: 他的服务器处于国外,所以下载速度较慢,不过我们可以通过换源解决。
- daocloud国内仓库: 国内也有一些优秀的商店,他和Docker官方的仓库的区别类似与Github和Gitee的区别。
- 网易云镜像中心
本博客主要解决在Windows环境下,快速上手使用Docker的问题,主要会介绍在Windows系统下Docker Desktop的安装,Docker 基础命令,比如说下载镜像、实例化镜像、使用容器、关闭容器、删除容器、使用仓库、创建镜像等模块的使用。其他系统应该除了安装外其他操作都可以通用。
Docker安装(Winodws)
开启 Hyper-V
程序与功能中,启用或关闭 Windows 功能


下载 Docker Desktop

打开安装包加载一会后一般会弹出两个选项,在较旧的Windows10或之前的系统会出现如下所示的相关提示。我们把第一个选上,第二个根据需求选择即可。

而较新的Windows则会出现一个使用wsl2的提示(最少是1903以上,推荐为2004或更高版本),如果使用wsl2则docker的性能会发挥更好。如下图,这里推荐使用WSL2,如果之后安装完成后发生报错可能是WSL2版本比较老,需要更新导致的

换源,使用阿里云
注册一个阿里云阿里云账号。进入管理控制台界面。
进入控制台

进入产品与服务

进入镜像加速器中,获取加速器地址

打开安装好的docker的主界面:在设置界面找到Docker Engin,将复制好的加速器地址填入即可

1 | { |
github上有个项目:docker_mirror,可以自动检测在你的网络环境下哪个源是最快的
启动Docker
windows下启动docker打开桌面的docker图标启动即可。 启动成功后,在Win + R 输入cmd进入windows命令行界面, 输入docker -v,查看docker版本:

首先我们输入docker run hello-world
是否会出现下图所示的提示,如果出现报错,环境配置可能出现了问题。
我在配置时候出现了Docker
无法拉取镜像并提示网络超时的问题,这里以我为例子解决一下

命令docker images显示说明images镜像中没有helloworld这个文件

这时我们只需要创建一个daemon.json文件,然后进入这个文件中添加如下内容:
1 | { |
然后保存退出,并重启docker
另一个错误

未运行Docker Desktop,要运行了之后再跑Docker的命令才行!
安装完成Docker后,默认每次开机的时候都会自动启动,但我们也可以手动启动,关闭或者重启Docker
1 | # 启动docker |
汉化 Docker Desktop
下载对应版本的中文语言包
访问 GitHub,下载适用于 Docker Desktop 的中文语言包,链接地址为:DockerDesktop-CN
选择对应你的版本

导航至 Docker 的安装目录,路径默认为:
1 | C:\Program Files\Docker\Docker\frontend\resources |
在该目录下找到 app.asar
文件,建议先备份原文件,然后将复制的中文语言包中的 app.asar
文件粘贴并替换原有文件。

完成替换后,请关闭 Docker Desktop,然后重新启动该程序。此时,Docker Desktop 应该以中文界面显示。

WSL2安装
WSL(Windows Subsystem for Linux)是微软开发的一项技术,允许用户在Windows系统中直接运行完整的Linux环境,无需虚拟机。通过操作系统级虚拟化,WSL将Linux子系统无缝嵌入Windows,提供原生Linux命令行工具、软件包管理器及应用程序支持。它具有轻量化、文件系统集成、良好的交互性及开发效率提升等优点,消除了Windows与Linux之间的隔阂,尤其适合开发者和需在Windows平台上使用Linux工具的用户。
启用 WSL 功能
- 打开开始菜单,在开始菜单中点击应用与程序
- 在应用与程序选项里面,鼠标滚到最底下,点击程序与功能
- 点击选项启用或关闭 Windows 功能
- 在弹出的窗口中勾选 虚拟机平台(Virtual Machine Platform) 和 适用于 Linux 的 Windows 子系统。

dos命令自动安装
对于 windows10 版本2004(内部版本19041或更高)及更新版本或者 windows11,可以直接用 dos命令安装
管理员打开 cmd 或者 powershell,依次
1 | dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart |

启用虚拟机功能
1 | dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart |
将 WSL 2 设置为默认版本
1 | wsl --set-default-version 2 |
更新 wsl 内核
1 | wsl --update |
列出发行版本并且选择一个安装
1 | wsl --list --online |
1 | wsl --install -d Ubuntu-24.04 |

之后使用 wsl.exe -d Ubuntu-24.04
启动

下次想要使用 wsl 的话,在 cmd 或者 powershell 内输入 wsl 命令即可:

Windows 下的所有文件都被挂载在了 /mnt
下,在Windows
终端中的任意目录下输入 wsl,即可进入 Linux 对应的路径。
错误修复:
无法访问。你可能没有权限使用网络资源。请与这台服务器的管理员联系以查明你是否有访问权限

WSL报告”请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化”
在 启用或关闭windows 功能中,查看是否勾选虚拟机平台
将注册表HKEY_LOCAL_MACHINE
和HKEY_LOCAL_MACHINE
两个键值中ProviderOrder
的值从
cbfs6,P9NP,RDPNP,LanmanWorkstation,webclient
改为
P9NP,RDPNP,LanmanWorkstation,webclient
在资源管理器中的
「地址栏」输入:\\wsl.localhost
或者
\\wsl.localhost\
也有概率直接就好了
导出到D盘
注意接下来的操作需要使用 管理员权限的 cmd或pw
首先,查看可用的 WSL 发行版
1 | wsl --list --online |
查看你的版本
1 | wsl -l -v |
关闭ubuntu
1 | wsl --shutdown Ubuntu-24.04 |
导出Ubuntu到指定位置
1 | wsl --export Ubuntu-24.04 D:\OtherLanguageSetting\WSL\Ubuntu-24.04\Ubuntu-24.04.tar |
取消注册原有的 Ubuntu,注销
1 | wsl --unregister Ubuntu-24.04 |
导入虚拟机到指定位置
1 | wsl --import Ubuntu-24.04 D:\OtherLanguageSetting\WSL\Ubuntu-24.04 D:\OtherLanguageSetting\WSL\Ubuntu-24.04\Ubuntu-24.04.tar --version 2 |
现在在目录下,WSL2 发行版的文件存储在一个 虚拟磁盘映像文件(ext4.vhdx) 中,该文件用于存储整个 Ubuntu-20.04 文件系统,如下图所示:

导入完成后,你可以启动 WSL
1 | wsl -d Ubuntu-24.04 |
添加新用户并设置其管理员权限,需要 root 权限
切换到 root 用户
在 WSL 的 Ubuntu 系统中,使用 su
命令切换到 root
用户:
1 | su - |
执行该命令后,系统会提示你输入 root 用户的密码。如果你之前没有设置过 root 密码,可以使用以下命令设置:
1 | sudo passwd root |
按照提示输入当前用户的密码,然后设置新的 root 密码。
添加新用户
1 | sudo adduser --allow-bad-names yourname |
赋予新用户管理员权限
在 Ubuntu 系统中,管理员权限通常通过将用户添加到 sudo
组来实现。使用以下命令将 ErgouTree
用户添加到
sudo
组:
1 | sudo usermod -aG sudo ErgouTree |
验证
1 | # 切换到新用户 |