WIN11下的WSL2能切换为Debian嘛?
最近折腾docker desktop下的immich,在看容器log时间和宿主机时间时,发现时区有差(宿主是CST,容器是UTC0,容器跑起来倒没问题),也就是说构建容器的yaml的时区设置没起效果,百思不得其解,断断续续对比和查询资料,发现底层原因是windows下WSL2默认的ubuntu版本不带TZdata时区模块,于是用dockerfile把这部分时区数据补充完整生成本地镜像,果然doker容器缺时区数据造成的log时间不对问题解决,大喜!
但同时有个新问题,如果immich下次版本更新,那就就得再构建生成一遍镜像。本着一劳永逸,于是就想着把WSL2默认基础系统的Ubuntu改成Debian(自带TZdata),于是一番折腾,WSL2默认配置配好,docker相关配置设置也配好,但发现跑起来仍然是Ubuntu。
这是哪个环节理解有误吗?还是win11下WSL的发行版就不能改为Debian?
wsl2看起来很好,实际上啰嗦得很,本质上是一个hyper-v虚拟机,微软魔改了一下而已。
我个人觉得在Win下跑wsl,还不如直接安装vmware或者virtualbox更好 非常感谢分享 非常感谢分享 有空去折腾一下看看 hqokabc 发表于 2025-3-17 17:52
有空去折腾一下看看
immich这个开源项目真是神作~感觉比那几个成品NAS带的照片工具都靠谱 看来我这个问题有点小众啊? 本帖最后由 supty 于 2025-3-18 12:51 编辑
WSL2本质还不是Hyper-V虚拟机,会折腾啥系统都能换,Ubuntu本身基于Debian的分支,用起来没什么太大差异,
时区显示问题,直接把/usr/share/zoneinfo/下对应的时区配置文件链接到 /etc/localtime 文件就进行了。
docker容器可以直接传递时区环境变量给容器内部.
win系统下的 docker desktop 应该是基于 ws2l 虚拟机下跑的,wsl2 虚拟机可以是任意一个linux发行版,docker容器
镜像也可以是任意一个linux基础镜像
supty 发表于 2025-3-18 12:46
WSL2本质还不是Hyper-V虚拟机,会折腾啥系统都能换,Ubuntu本身基于Debian的分支,用起来没什么太大差异,
...
第一段这边具体试试就知道了,wsl2下默认ubuntu是没有时区库,所以网上那些所谓挂载链接,有个前提,是有时区库的基础镜像。我在没有时区库镜像跑起来是这样:时区时间不会变但字符会有个变化。比如东八区CST时区对应的设置 TZ=Asia/Shanghai在没有时区库对应情况下,date时间仍然是UTC0时间,不过对应显示会显示/前Asia。
第二段其实不在问基础概念,在问如何具体切换并让切换有效化。
页:
[1]