docker 还是很能吃内存的

2023-06-25 21:13:21 +08:00
 ltltfuture
开了一个 flink 流处理实验环境,32g 就没了
还没开 spark 批处理部分
幸好本子 64g ram
希望早点出双通道 128g 条子
3124 次点击
所在节点    程序员
16 条回复
rbaloatiw
2023-06-25 21:21:33 +08:00
这是你的 workload 吃内存啊, 和 docker 有啥关系..
sadfQED2
2023-06-25 21:22:23 +08:00
这不是 docker 吃内存,docker 消耗那点内存几乎可以忽略。你这个是因为 flink 吃内存
JackCh3ng
2023-06-25 21:25:07 +08:00
想秀你的 64g 内存就直接秀,没必要踩一脚 docker ,真要得出 docker 吃内存的结论,不用 docker 直接把程序跑在机器上对比一下才有说服力。
ltltfuture
2023-06-25 21:25:38 +08:00
@rbaloatiw
@sadfQED2
嗯,没描述清楚,我是指配的这套环境
ltltfuture
2023-06-25 21:27:22 +08:00
@JackCh3ng 这有啥好秀和踩,只是描述我这个配置环境需要很多内存而已
glogo
2023-06-25 21:47:08 +08:00
如果你是跑在 WSL2 backend 的 Docker Desktop 上,可以通过 .wslconfig 限制 WSL2 的内存使用,说不定 其实本不用真多内存,WSL2 很能吃内存的,都会开的很大
ltltfuture
2023-06-25 21:51:22 +08:00
@glogo 确实在 WSL2 上,学习了,我去研究一下
zed1018
2023-06-25 22:20:39 +08:00
@glogo 张嘴就来,vmmemwsl 吃多少完全是里面 linux 要了多少,而且新版本默认也就 50% Hostmem ,wsl 自己根本要不多少内存。他的 workload 要多少内存实际看一下不就完了,没有必要黑一脚 wsl


ltltfuture
2023-06-25 22:49:18 +08:00
@glogo
@zed1018
供两位讨论

t133
2023-06-26 08:22:00 +08:00
Wsl2 的内存释放的确有问题 如果你的 docker 峰值占用高基本 32g 才够用
zed1018
2023-06-26 08:48:02 +08:00
@ltltfuture 你自己看你 buff/cache17Gi ,有什么问题吗?
zed1018
2023-06-26 08:49:11 +08:00
@ltltfuture 难道 buff/cached 是 wsl2 申请的么
ucando
2023-06-26 09:40:40 +08:00
wsl 要手动限制一下最高内存, 可以在用户目录下建一个.wslconfig 的文件, 具体如何配置可以百度一下. docker run 的时候也加上内存限制的参数. 如果都不限制, 内存占用量绝对超乎你的想象
zzzmh
2023-06-26 10:56:52 +08:00
可以刷个 linux ,在 linux 下跑 docker ,美滋滋了就
yinmin
2023-06-26 12:44:43 +08:00
buff/cache 跑了 17GB ,这是 linux 的 cache 。windows 的 WLS2 和 Hyper-V 跑 linux ,动态内存管理基本不好使,linux 的 cache 会跑满所有内存。windows 下最佳 docker 生产环境,推荐 hyper-v + debian + docker + portainer 。你这个情况,可以配置 debian 虚拟机 8GB 内存。
glogo
2023-06-26 22:39:35 +08:00
笑死,我天天用 WSL2, 还说我张嘴就来黑 WSL. 敢情你爱的那么深啊
@zed1018

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/951590

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX