docker + vue-cli ,开发 hot-reload 时编译超慢

2020-11-13 12:25:59 +08:00
 leekafai

windows10

FROM node:lts-alpine
EXPOSE 22 8080
ENV CHOKIDAR_USEPOLLING=true
RUN npm install -g @vue/cli

docker run 的时候挂载 volume,vue-cli 初始化项目代码后,发现修改代码 hot-reload 的时候超级慢,正常主机可能只需要 4-6s,docker 里面要 60s+

是什么原因引起这种问题,有没有办法优化一下?

1822 次点击
所在节点    程序员
5 条回复
wxsm
2020-11-13 12:33:54 +08:00
windows 并不支持容器技术,你的 docker 实际上是跑在 linux 虚拟机里面的。
leekafai
2020-11-13 15:14:56 +08:00
@wxsm 哇哦确实,我放到服务器上面跑,基本上秒级了。看来 win 下是主机-wsl-docker,层级太多了
x66
2020-11-13 15:30:39 +08:00
我猜是 wsl2 挂在在 /mnt 下的 windows 磁盘是通过网络协议读写的,小文件太多导致的性能问题。
代码放到其他目录试试呢
xzysaber
2020-11-13 20:25:16 +08:00
题主是用的 wsl2 吗?
这个是 wsl2 已知的问题,https://github.com/microsoft/WSL/issues/4197
我之前解决这个问题是通过将代码放到 wsl distros 解决的。
leekafai
2020-11-16 11:53:46 +08:00
@xzysaber 是的,我试了下在 linux 下就秒好,我现在直接在双十一买的一个 ecs 上弄了

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

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

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

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

© 2021 V2EX