准备工作:
Docker for Windows的当前版本运行在64位Windows 10 Pro,专业版、企业版和教育版(1607年纪念更新,版本14393或更高版本)上。Ps:家庭版是不行的,如果你是家庭版,那么一是升级到专业版,破解专业版推荐个地址: ,二是安装Docker Toolbox,自行网上百度
如果你满足Docker for Windows的环境条件了,那么首先检查电脑的虚拟化开启了没有:进入任务管理器(ctrl+alt+delete),点击性能->cpu ,查看虚拟化是否已启用,如果虚拟化是已禁用,那么你需要重启电脑进入bios开启虚拟化(我们的发的笔记本cpu都是支持虚拟化的,重启时进入bios按esc -> 再按f12 -> 去开启虚拟化)
开启虚拟化重启后,进入任务管理器看虚拟化是否已启用。
1、先开启Hyper-v
2、安装docker
打开官网:
3、运行安装软件
一直next,finish之后,在通知栏出现图标。
这个表示docker未在运行,出现这个一般要求你去下载WSL2,去Microsoft stone里下载Linux服务器,我下的是Ubuntu,并安装。
这个表示docker在运行,安装完WSL2后,就能正常启动docker了
3.1、需要你去注册登录。
x
3.2、检查Docker,Compose和Machine的版本
docker --version
#结果
Docker version 19.03.13, build 4484c46d9ddocker-compose --version
#结果
docker-compose version 1.27.4, build 40524192docker-machine --version
#结果,默认安装我这里没有这个东西,以后再看看
'docker-machine' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
3.3、检查版本信息,并确保docker命令正常工作
docker ps
#结果
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
docker version
#结果
Client: Docker Engine - CommunityCloud integration: 1.0.2Version: 19.03.13API version: 1.40Go version: go1.13.15Git commit: 4484c46d9dBuilt: Wed Sep 16 17:00:27 2020OS/Arch: windows/amd64Experimental: falseServer: Docker Engine - CommunityEngine:Version: 19.03.13API version: 1.40 (minimum version 1.12)Go version: go1.13.15Git commit: 4484c46d9dBuilt: Wed Sep 16 17:07:04 2020OS/Arch: linux/amd64Experimental: falsecontainerd:Version: v1.3.7GitCommit: 8fba4e9a7d01810a393d5d25a3621dc101981175runc:Version: 1.0.0-rc10GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dddocker-init:Version: 0.18.0GitCommit: fec3683
docker info
#结果
Client:Debug Mode: falsePlugins:scan: Docker Scan (Docker Inc., v0.3.4)Server:Containers: 0Running: 0Paused: 0Stopped: 0Images: 0Server Version: 19.03.13Storage Driver: overlay2Backing Filesystem: extfsSupports d_type: trueNative Overlay Diff: trueLogging Driver: json-fileCgroup Driver: cgroupfsPlugins:Volume: localNetwork: bridge host ipvlan macvlan null overlayLog: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslogSwarm: inactiveRuntimes: runcDefault Runtime: runcInit Binary: docker-initcontainerd version: 8fba4e9a7d01810a393d5d25a3621dc101981175runc version: dc9208a3303feef5b3839f4323d9beb36df0a9ddinit version: fec3683Security Options:seccompProfile: defaultKernel Version: 4.19.128-microsoft-standardOperating System: Docker DesktopOSType: linuxArchitecture: x86_64CPUs: 8Total Memory: 12.33GiBName: docker-desktopID: 3XZ7:M4HM:RQHQ:HCXR:3EM6:YZIT:UA6L:XRZD:NSHR:YBYY:IJWA:A3QJDocker Root Dir: /var/lib/dockerDebug Mode: falseRegistry: :Experimental: falseInsecure Registries:127.0.0.0/8Live Restore Enabled: falseProduct License: Community EngineWARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
4、打开docker for Windows客户端
以上都没问题后,当看到如下图片时,恭喜你安装成功。
5、卸载
正常去控制面板-->卸载或更改程序
官方文档:
6、本地建一个GitHub仓库,用以创建一个image和容器
6.1、右击任务栏上的小图标,选中“Quick Start Guide”,快速开始引导建仓库。
然后出现上图,点击上图中的“start”,按步骤进行。
6.2、按照引导一步步执行。
6.3、如果引导出错,就在命令提示符中用命令,自行执行。
失败的情况下,确保你的容器和镜像都删掉了,重新开始部署。
a、将这个github的代码克隆到repo容器。
容器名:repo
image:alpine/git
docker run --name repo alpine/git clone .git
#结果:
Unable to find image 'alpine/git:latest' locally
latest: Pulling from alpine/git
188c0c94c7c5: Pull complete
702923bb7eae: Pull complete
fad1dae2adf8: Pull complete
Digest: sha256:f3a0a5f4b156e34708a9315b175f1bc7c54e7fb913a2d068c438859e92ac408a
Status: Downloaded newer image for alpine/git:latest
Cloning into 'getting-started'...
b、将代码拷贝到本地,目录是当前目录。
docker cp repo:/git/getting-started/ .
c、使用此配置生成新的镜像,这段时间比较久,还可能造成timeout,那就重试。
cd getting-started
docker build -t docker101tutorial .
d、更换了阿里镜像加速器,还是访问不了yarn官网,安装不了yarn,放弃了,还不知道咋搞,花 了一天时间也没搞出来。
e、直接运行示例里的
docker run -d -p 80:80 docker/getting-started
看到docker成功生成了容器,并运行了。
4、镜像加速
在egistry-mirrors处添加加速器地址,点击apply
#自己去登录阿里云-->控制台-->容器镜像管理器-->镜像加速器
""
5、开启WSL2
Hyper-v没有像vbox那样强制关机的选项,就导致不正常的虚拟机,关不掉,也用不了,也导致docker用不了,为了解决这问题,建议开启WSL2,并安装分发包。
WSL
WSL:适用于 Linux 的 Windows 子系统。
什么是适用于 Linux 的 Windows 子系统?
适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生虚拟机开销。
什么是 WSL 2?
WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在 Windows 上运行 ELF64 Linux 二进制文件。它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性。
6、安装WSL2
若要更新到 WSL 2,需要运行 Windows 10。
要求
对于 x64 系统:版本 1903 或更高版本,采用 内部版本 18362 或更高版本。
对于 ARM64 系统:版本 2004 或更高版本,采用 内部版本 19041 或更高版本。
低于 18362 的版本不支持 WSL 2。 使用 Windows Update 助手更新 Windows 版本。
若要检查 Windows 版本及内部版本号,选择 Windows 徽标键 + R,然后键入“winver”,选择“确定”。 (或者在 Windows 命令提示符下输入 ver
命令)。 更新到“设置”菜单中的最新 Windows 版本。
备注:如果运行的是 Windows 10 版本1903 或 1909,请在 Windows 菜单中打开“设置”,导航到“更新和安全性”,然后选择“检查更新”。 内部版本号必须是 18362.1049+ 或 18363.1049+,次要内部版本号需要高于 .1049。 阅读详细信息:WSL 2 即将支持 Windows 10 版本 1903 和 1909。 请参阅疑难解答说明。
a、以管理员启动命令提示符,输入命令:
< /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
b、下载Linux内核更新包
1、下载最新包:
适用于 x64 计算机的 WSL2 Linux 内核更新包
备注:如果使用的是 ARM64 计算机,请下载 ARM64 包。 如果不确定自己计算机的类型,请打开命令提示符或 PowerShell,并输入:systeminfo | find "System Type"
。
2、运行上一步中下载的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)
安装完成后,请继续执行下一步 - 在安装新的 Linux 分发时,将 WSL 2 设置为默认版本。
c、将WSL2设置成默认版本
wsl --set-default-version 2
备注:从 WSL 1 更新到 WSL 2 可能需要几分钟才能完成,具体取决于目标分发版的大小。 如果从 Windows 10 周年更新或创意者更新运行 WSL 1 的旧(历史)安装,可能会遇到更新错误。 按照这些说明卸载并删除任何旧分发。
如果 wsl --set-default-version
结果为无效命令,请输入 wsl --help
。 如果 --set-default-version
未列出,则表示你的 OS 不支持它,你需要更新到版本 1903(内部版本 18362)或更高版本。
运行命令后如果看到此消息:WSL 2 requires an update to its kernel component. For information please visit
。 仍需要安装 MSI Linux 内核更新包。
d、安装Linux分发
打开 Microsoft Store,我选择Ubuntu,下载并安装(看网络情况,有的网络很慢,建议换网络)
c、设置新分发的账号密码
首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。
更多问题查看:
本文发布于:2024-02-04 22:49:20,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170718158560437.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |