环境
Windows 10 LTSC 2019 Version 1809
启用 Hyper-V
安装 Docker for Windows 非 Docker Toolbox
问题
网络状态未识别,默认安装的两个虚拟交换机 Default Switch 和 DockerNAT 一直是未识别的网络
默认安装的虚拟机不显示 IP 地址,Hyper-V 也无法连接上虚拟机
命令 docker-machine ls
显示为空,即使上图中 Docker 的宿主机是存在的
和这位遇到的情况差不多:https://segmentfault.com/q/1010000014706486
结果
放弃。有 Linux 不用,我在 Windows 上用 Docker 图的啥啊,又不馋她身子
更可笑的是,这类的 issue 三年前就有人提了:Docker HyperV vEthernet (DockerNAT) is Un-identified Network (Public Network) in tray · Issue #367 · docker/for-win · GitHub
另一个原因是,我对 host-only、nat、bridge 啥的不了解
呃,没想到最终结果是弃坑啊…
不过,现在很多人在搞 Docker 替换啊,比如 Podman 三件套啊。
但是我怎么觉得没意义… 不过百花齐放就是好啊
1 个赞
allor
2020 年1 月 10 日 15:07
4
如果不是太重的活,其实可以买个N1盒子刷机来耍docker
1 个赞
NAT 你得手动分配IP,例如192.168.1.123
1 个赞
我也觉得别再 Windows 上折腾 Docker 了,还不如用 Hyper-V 虚拟一台 Ubuntu 出来,然后再上 Docker
1 个赞
人生苦短,远离 Docker for Windows。至少也要等 WSL 2 正式发布。
P.S. VS Code 中安装 Remote - SSH
和 Remote - Containers
这两个插件会非常爽,只是笔记本的 8G 内存感觉不够看了。
1 个赞
rodger
2020 年1 月 16 日 05:43
17
也折腾了一阵,不过果断找了太机器ubuntu了,生命诚可贵,不能浪费在这种事情上,做完事情才是最重要的。
其实,后来我又试了一遍,结果搞得还蓝屏了。还好最近的还原点是前一天晚上,没造成多大麻烦。
等放假回家,多看看计网知识,再到备用机上折腾吧。
我继续查了点资料后,发现 Docker 默认的网络模式其实是 bridge,参见:Networking overview | Docker Docs
但是,Docker bridge 的实现方式好像又跟 Linux bridge 不太一样,具体我没看太懂,参见:探索 Docker bridge 的正确姿势 小白亲测有效! - V2EX
Docker bridge 模式下 Docker Daemon 会创建一个名为 docker0 的虚拟网桥( https://yeasy.gitbooks.io/docker_practice/advanced_network/docker0.html ),用于连接宿主机与容器,或者是容器之间的通信……
不过呢,以上所说的都是 Linux 环境下的。Docker for Windows 虽然同样默认 bridge 模式,但是由于实现方式不同,
Because of the way networking is implemented in Docker Desktop for Windows, you cannot see a docker0
interface on the host. This interface is actually within the virtual machine.
Windows 上是不存在 docker0 这玩意儿的,参见:Explore networking features on Docker Desktop | Docker Docs
所以,我就一直在这里面转不出来。
加了块固态硬盘,但是内存条是焊在主板上的就很难受……
貌似8代以前的笔记本标压都能拆卸,然后就是。。。蓝天模具的,直接台式机CPU,自然可以拆卸,显卡都行
确实。所以买了台 RamNode 家的 VPS,顺便还能把 IPv6 利用起来。
allor
2020 年1 月 13 日 14:53
11
不趁内存降价升级一下?
我内存升级了,4+4,然而CPU才1.4,焊死在主板上那种
教训:买长期使用的笔记本,一定要买有升级余地的(内存槽+SSD槽+CPU可拆卸)。