在容器中执行脚本,被killed。大概猜想是内存不够,本机是16G、docker限制8G。
查看日志
#查看当前 Docker 使用的 WSL 发行版
wsl -l -v
#进入 docker 的 WSL 宿主机(一般是 docker-desktop)
wsl -d docker-desktop
#查看 dmesg 日志(内核日志)
dmesg | grep -i kill
# 或者
dmesg -T | grep -i "killed process"
果真,那就修改一下内存限制再试试吧。
修改wsl2限制内存
定位到你的 用户目录(比如 C:Users你的用户名)
(可以win + r 输入 %UserProfile% ),打开用户目录,创建.wslconfig文件。
C:Users<你的用户名>.wslconfig
添加或修改以下内容:
[wsl2]
memory=12GB
swap=4G
processors=6
memory=12GB # 分配给 WSL2 的最大内存
processors=6 # 可选,限制使用的 CPU 核心数
swap=8GB # 可选,设置 swap 大小
保存后,重启 WSL
wsl --shutdown
重启 Docker Desktop。
修改之前
修改之后
虽然还是没什么卵用,去线上跑吧。垃圾
评论 (0)