二、Docker安装及使用教程(Windows版)

1.下载安装

下载地址:https://docs.docker.com/desktop/install/windows-install/
在这里插入图片描述
双击下载的exe文件,都选择使用默认设置,等待安装完成即可。

2.启用windows Hyper-V虚拟引擎

参考菜鸟教程
Hyper-V 是微软开发的虚拟机,类似于 VMWare 或 VirtualBox,仅适用于 Windows 10。这是 Docker
Desktop for Windows 所使用的虚拟机。

注意:这个虚拟机一旦启用,QEMU、VirtualBox 或 VMWare Workstation 15
及以下版本将无法使用!如果你必须在电脑上使用其他虚拟机(例如开发 Android 应用必须使用的模拟器),请不要使用 Hyper-V!

1.打开设置

在这里插入图片描述

2.搜索【启用或关闭 windows 功能】

在这里插入图片描述
在这里插入图片描述

3.勾选Hyper-V服务

在这里插入图片描述

4、根据提示重启电脑,等待更新即可

2.启动Docker Desktop

双击启动Docker Desktop时,出现报错Docker Desktop requires a newer WSL kernel version.
在这里插入图片描述
报错原因是WSL不是最新版,现在Docker Desktop默认使用WSL 2来运行,而不是以前的Hyper-V。

WSL是适用于 Linux 的 Windows 子系统 ,可让开发人员直接在 Windows 上按原样运行 GNU/Linux
环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。

WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在
Windows 上运行 ELF64 Linux 二进制文件。 它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性。

扫描二维码关注公众号,回复: 15396927 查看本文章

管理员方式打开windows命令行(直接打开没有操作权限),输入命令:wsl --update
在这里插入图片描述
再次双击打开Docker Desktop,可以看到使用的wsl2虚拟引擎,而不是Hyper-V。
在这里插入图片描述

3.配置加速源

运行成功后配置需要的加速源,加快下载的速度。注意在原配置后加一个逗号:

"registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
]

在这里插入图片描述
在命令行中输入docker info命令,可以在末尾看到配置后的结果:
在这里插入图片描述

4.迁移镜像路径

docker默认安装路径一般在C:\Program Files\Docker
在这里插入图片描述

WSL发行版默认安装路径在%LOCALAPPDATA%/Docker/wsl目录
在这里插入图片描述

docker的运行数据、镜像文件都存在%LOCALAPPDATA%/Docker/wsl/data/ext4.vhdx中,后续安装docker镜像和容器会让C盘空间紧张。
可以通过以下步骤来迁移镜像的路径:
1.关闭Docker Desktop
2.在命令行输入关闭wsl的命令:wsl --shutdown
3.将docker-desktop-data导出到你想放置的位置(后缀名设为.tar)

wsl --export docker-desktop-data PATH\FILE.tar
// PATH为导出地址,例如:D:\docker-vm-source
// FILE为导出后的文件名称,例如:docker-desktop-data
// 完整命令:`wsl --export docker-desktop-data D:\docker-vm-source\docker-desktop-data.tar`

在这里插入图片描述
4.在命令行输入注销原docker-desktop-data的命令:wsl --unregister docker-desktop-data
5.重新导入docker-desktop-data

wsl --import docker-desktop-data org_folder src_file --version 2
// org_floder:想存放镜像和容器的目录
// src_file:步骤3中导出的文件名
// 完整命令:`wsl --import docker-desktop-data D:\docker-vm-source\DockerDesktop D:\docker-vm-source\docker-desktop-data.tar --version 2`

在这里插入图片描述
迁移完成后重启docker即可。

5.进入docker虚拟机的方法

通过docker info 命令可以看到docker虚拟机的根目录为/var/lib/docker。
在这里插入图片描述
我们是在win10系统安装的docker,怎么进入这个目录呢?进入docker虚拟机的方法如下:
1.获取可访问Docker守护程序的容器

docker run --privileged -it -v /var/run/docker.sock:/var/run/docker.sock jongallant/ubuntu-docker-client 

2.运行具有完全root访问权限的容器

docker run --net=host --ipc=host --uts=host --pid=host -it --security-opt=seccomp=unconfined --privileged --rm -v /:/host alpine /bin/sh

3.切换到文件系统

chroot /host

在这里插入图片描述
在这里插入图片描述

6.限制虚拟进程的内存大小

windows版docker的使用方式和linux版docker一致,通过命令行操作即可。
在安装若干个镜像和容器后,查看windows的任务管理器和资源监视器发现vmmem的虚拟进程消耗了11G左右的内存资源
在这里插入图片描述
通过查看各docker容器的内存发现总计也才3G左右
在这里插入图片描述
解决WSL2中Vmmem内存占用过大问题的步骤如下:
1.按下Windows + R 键,输入 %UserProfile% 并运行进入用户文件夹
2.新建文件 .wslconfig ,然后用记事本编辑,填入以下内容并保存:

#.wslconfig
[wsl2]
memory=4GB
swap=0
localhostForwarding=true

memory为虚拟进程内存上限,这里我限制最大4GB,可根据自身电脑配置设置。

猜你喜欢

转载自blog.csdn.net/weixin_44330367/article/details/130146965