如何在 Windows 上运行 Linux 容器(2)

$vmGroupRule =new-object System.Security.AccessControl.FileSystemAccessRule("NT VIRTUAL MACHINE\Virtual Machines","FullControl","ContainerInherit,ObjectInherit","None","Allow")

$acl.SetAccessRule($vmGroupRule)

Set-Acl-AclObject $acl -Path $Root

将其保存为set_perms.ps1并运行它。

提示,你也许需要运行 Set-ExecutionPolicy -Scope process unrestricted 来允许运行未签名的 Powershell 脚本。

如何在 Windows 上运行 Linux 容器

C:\Users\mathi\> .\set_perms.ps1 "C:\Program Files\Linux Containers"

C:\Users\mathi\>

现在,将上一步解压得到的 Ubuntu 容器镜像(.vhdx)复制到  C:\Program Files\Linux Containers 下的 uvm.vhdx。

8、更多的 Docker 准备工作

Docker for Windows 要求一些预发布的功能才能与 Hyper-V 隔离相配合工作。这些功能在之前的 Docker CE 版本中还不可用,这些所需的文件可以从 master.dockerproject.org 下载。

如何在 Windows 上运行 Linux 容器

从 master.dockerproject.org 下载 dockerd.exe 和 docker.exe,并将其放到安全的地方,比如你自己的文件夹中。它们用于在下一步中启动 Ubuntu 容器。

9、 在 Hyper-V 上运行 Ubuntu 容器

你现在已经准备好启动你的容器了。首先以管理员身份打开命令行(cmd.exe),然后以正确的环境变量启动 dockerd.exe。

C:\Users\mathi\> set LCOW_SUPPORTED=1

C:\Users\mathi\> .\dockerd.exe -D --data-root C:\lcow

然后,以管理员身份启动 Powershell 窗口,并运行 docker.exe 为你的容器拉取镜像:

C:\Users\mathi\> .\docker.exe pull ubuntu

如何在 Windows 上运行 Linux 容器

如何在 Windows 上运行 Linux 容器

如何在 Windows 上运行 Linux 容器

现在你终于启动了容器,再次运行 docker.exe,让它运行这个新镜像:

C:\Users\mathi\> .\docker.exe run -it ubuntu

恭喜你!你已经成功地在 Windows 上让你的系统运行了带有 Hyper-V 隔离的容器,并且跑的是你非常喜欢的 Ubuntu 容器。

10、获取帮助

如果你需要一些 Hyper-V Ubuntu 容器的起步指导,或者你遇到一些问题,你可以在这里寻求帮助:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/13440.html