V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
leekafai
V2EX  ›  程序员

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

  •  
  •   leekafai · 2020-11-13 12:25:59 +08:00 · 1562 次点击
    这是一个创建于 1231 天前的主题,其中的信息可能已经有所发展或是发生改变。

    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+

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

    5 条回复    2020-11-16 11:53:46 +08:00
    wxsm
        1
    wxsm  
       2020-11-13 12:33:54 +08:00   ❤️ 1
    windows 并不支持容器技术,你的 docker 实际上是跑在 linux 虚拟机里面的。
    leekafai
        2
    leekafai  
    OP
       2020-11-13 15:14:56 +08:00
    @wxsm 哇哦确实,我放到服务器上面跑,基本上秒级了。看来 win 下是主机-wsl-docker,层级太多了
    x66
        3
    x66  
       2020-11-13 15:30:39 +08:00
    我猜是 wsl2 挂在在 /mnt 下的 windows 磁盘是通过网络协议读写的,小文件太多导致的性能问题。
    代码放到其他目录试试呢
    xzysaber
        4
    xzysaber  
       2020-11-13 20:25:16 +08:00
    题主是用的 wsl2 吗?
    这个是 wsl2 已知的问题,https://github.com/microsoft/WSL/issues/4197
    我之前解决这个问题是通过将代码放到 wsl distros 解决的。
    leekafai
        5
    leekafai  
    OP
       2020-11-16 11:53:46 +08:00
    @xzysaber 是的,我试了下在 linux 下就秒好,我现在直接在双十一买的一个 ecs 上弄了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3260 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:39 · PVG 08:39 · LAX 17:39 · JFK 20:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.