WSL 中的高级设置配置
572 17
[1 楼] 徕卡西多 [泡菜]
22-1-6 01:05
把我关了,这事我不计较,但我还是要发微软关于wsl的文档。。

链接:

https://docs.microsoft.com/zh-cn/windows/wsl/wsl-config

三处提到虚拟机,我引用两段。。

正在运行的 WSL 版本会影响配置设置。 WSL 2 作为轻型虚拟机 (VM) 运行,因此使用虚拟化设置可以控制使用的内存或处理器量 (如果使用 Hyper-V 或 VirtualBox) ,则可能会很熟悉。

只能用于 WSL 2运行的分发。 作为 WSL 1 运行的分发不受此配置的影响,因为它们不是作为虚拟机运行的。
[18 楼] 徕卡西多 [泡菜]
22-1-11 13:21
数据库是可以,但还有个数据库的应用没跑起来。。101是新开的内网ip。
[17 楼] 徕卡西多 [泡菜]
22-1-11 12:37
群晖运行不了这条命令,报错是无权限。。还是加sudo报错。

(sudo)docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)

为什么研究这个主要是想把群晖跑的容器当个独立(机器)内置容器使用,网上也有这么做的,用到了macvlan,其中说到要开open
vswitch其实是为虚拟机使用的目的,由此也可见容器其实跟虚拟机差不多。

https://www.xiaoten.com/archives/Use-Synology-nas-to-build-a-docker-version-of-independent-weekend-ip.html/comment-page-1 本帖最后由 徕卡西多 于 2022-1-11 12:50 编辑
[16 楼] 闲聊状态 [泡菜]
22-1-7 12:40
徕卡西多 发表于 2022-1-6 16:16
是,已经装好,但就是ip不通。。

/ # docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'  mariadb
172.18.0.2 地下室mariadb ip
/ # exit
~$ docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)
/some-docker - 172.17.0.10 一楼嵌套docker
/postgres54321 - 172.17.0.9
/postgres5432 - 172.17.0.8
/portainer - 172.17.0.3
/mystifying_dubinsky - 172.17.0.6
/stock - 172.17.0.7
/mariadb - 172.17.0.5
/postgres54320 - 172.17.0.4
/mysql23315 - 172.17.0.2
/mysql23316 - 172.17.0.6
~$wsl2


不折腾套娃 这个得你自己研究了
[15 楼] 徕卡西多 [泡菜]
22-1-6 16:16
闲聊状态 发表于 2022-1-6 13:21
Unable to find image 'mariadb:latest' locally

嵌套是没问题的
但是每层都是一个独立的世界
是,已经装好,但就是ip不通。。

/ # docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'  mariadb
172.18.0.2 地下室mariadb ip
/ # exit
~$ docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)
/some-docker - 172.17.0.10 一楼嵌套docker
/postgres54321 - 172.17.0.9
/postgres5432 - 172.17.0.8
/portainer - 172.17.0.3
/mystifying_dubinsky - 172.17.0.6
/stock - 172.17.0.7
/mariadb - 172.17.0.5
/postgres54320 - 172.17.0.4
/mysql23315 - 172.17.0.2
/mysql23316 - 172.17.0.6
~$wsl2 本帖最后由 徕卡西多 于 2022-1-6 16:21 编辑
[14 楼] 闲聊状态 [泡菜]
22-1-6 13:21
徕卡西多 发表于 2022-1-6 12:28
报错。。不嵌套运行下面命令在本机创建数据库,数据库ip地址就是本机的,端口也是本机的。

下面发的是进入docker in docker 命令行再创建就报错了。

/ # docker run --name mariadb --restart=always  -e MYSQL_ROOT_PASSWORD=mariadb -p 3306:3306 -d mariadb:latest
Unable to find image 'mariadb:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp: lookup registry-1.docker.io on 127.0.0.11:53: read udp 127.0.0.1:58895->127.0.0.11:53: i/o timeout.
See 'docker run --help'.

Unable to find image 'mariadb:latest' locally

嵌套是没问题的
但是每层都是一个独立的世界  
[13 楼] 徕卡西多 [泡菜]
22-1-6 12:48
图示docker in docker,目前这样。。

又看了下,一楼容器进入命令行都没有ifconfig,除了some-docker,因为后者创建时是建了子网的,子网段就是我本地网。 本帖最后由 徕卡西多 于 2022-1-6 13:04 编辑
[12 楼] 徕卡西多 [泡菜]
22-1-6 12:28
闲聊状态 发表于 2022-1-6 11:52
docker 不是虚拟化就是 chroot 嵌套多少层理论上都可以。。。


报错。。不嵌套运行下面命令在本机创建数据库,数据库ip地址就是本机的,端口也是本机的。

下面发的是进入docker in docker 命令行再创建就报错了。

/ # docker run --name mariadb --restart=always  -e MYSQL_ROOT_PASSWORD=mariadb -p 3306:3306 -d mariadb:latest
Unable to find image 'mariadb:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp: lookup registry-1.docker.io on 127.0.0.11:53: read udp 127.0.0.1:58895->127.0.0.11:53: i/o timeout.
See 'docker run --help'.
[11 楼] 闲聊状态 [泡菜]
22-1-6 11:52
徕卡西多 发表于 2022-1-6 11:39
docker可以嵌套,具体我没试了,不是很需要。。

zt

先回答这个问题,结论是可以。

前面很多答主也都回答了这是 `dind` 即 Docker In Docker 了


docker 不是虚拟化就是 chroot 嵌套多少层理论上都可以。。。
[10 楼] 闲聊状态 [泡菜]
22-1-6 11:51
windows  我觉得还是不适合开普通docker 这东西需要linux
win10下只能跑虚拟机下  浪费资源,不如直接上linux

windows下装win2019 server 可以装win下的docker 用win的内核,跑win的程序,类似linux 下的传统docker ,不是虚拟的
win10不支持这样 win10只有虚拟机
但是 这个玩意 资源占用也比linux大,但是好歹比虚拟机的强点

而最高级的我觉得还是wsl1,win模拟的内核搞出来的win下的"Linux docker“ 本帖最后由 闲聊状态 于 2022-1-6 11:53 编辑
[9 楼] 徕卡西多 [泡菜]
22-1-6 11:39
docker可以嵌套,具体我没试了,不是很需要。。

zt

先回答这个问题,结论是可以。

前面很多答主也都回答了这是 `dind` 即 Docker In Docker 了
[8 楼] 徕卡西多 [泡菜]
22-1-6 11:19
我点前图config那里看到什么呢,去到了首页链接的英文版,里面出现十二次VM,确定无疑wsl2是虚拟机了,至于此时windows docker,都说跟wsl2一起配了,是个什么情况可以脑补~。
[7 楼] 徕卡西多 [泡菜]
22-1-6 11:14
再看windows docker,与wsl2集成,所以内存cpu和wsl2共管,配置也就是首页微软文档里说的配置。
[6 楼] 徕卡西多 [泡菜]
22-1-6 11:07
docker openwrt in openwrt,没开docker了,这版本自己也没带?不是很清楚,docker不能嵌套,我反正是没试过二次docker。
[5 楼] 徕卡西多 [泡菜]
22-1-6 10:57
实体机(四核ARM,内存4G跟J900一样)docker,享受主机全部内存,cpu,因为不用考虑用多少cpu内存。
[4 楼] 徕卡西多 [泡菜]
22-1-6 10:54
docker资源是自动分配的,也就是J1900主机给虚拟机的资源。 本帖最后由 徕卡西多 于 2022-1-6 10:54 编辑
[3 楼] 徕卡西多 [泡菜]
22-1-6 10:41
这虚拟机也是轻量级的,但至少要分配1 cpu,内存不算大问题,可以给几百兆都行,所以对J1900主机(运行虚拟机)来说是缺cpu(核)。

我就在上面跑了一个docker,当然它还能干其他事不过有群晖在都不需要它干了。

加上这个虚拟机版openwrt,我本地一共3个openwrt,另外那两个就是实体机openwrt再docker一个openwrt。 本帖最后由 徕卡西多 于 2022-1-6 10:46 编辑
[2 楼] 徕卡西多 [泡菜]
22-1-6 09:11
群晖上我开了一个虚拟机,同时开了五六个容器,资源分配是虚拟机用一半剩下的都是群晖主机并docker的。

看资源使用情况。

且此时虚拟机已经不能多开了,因为J1900主机就四核4G,而容器那边还没用尽分配给docker的资源(系统自动分配的,至今我没为群晖docker设置需要多少cpu多少内存)。 本帖最后由 徕卡西多 于 2022-1-6 09:14 编辑