V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
abiaqiou
V2EX  ›  问与答

请问目前 Windows10 上的最佳前端开发环境是 vscode+docker+wsl2 吗?

  •  
  •   abiaqiou · 29 天前 · 1595 次点击

    18 年左右尝试了解 docker,当时个人得出的结论是适用于部署但不适用于开发,就没怎么深入学了。近期写了个需要调用 chrome 的程序给运维部署,结果运维那边折腾半天跑不起来。今日复盘分析总结发现,根本原因就是 ubuntu 和 windows 环境不一致造成的( ubuntu 默认无 chrome 依赖),而如果开发时用 docker 统一环境的话,就能规避掉这些问题。

    去网上大概看了一下,个人感觉目前最佳实践是 vscode+docker+wsl2? 也有一个 源代码放本地宿主机并挂载,依赖装在容器里 的方案。目前这两种方案都未实践过。研究过这方面实践的 V 友可以讲讲吗?

    22 条回复    2021-09-18 21:02:40 +08:00
    Bazingal
        1
    Bazingal   29 天前
    用 wsl2 就没必要用 docker 了吧,源代码放宿主机的话磁盘性能不行,尤其是前端这种文件又多又小的
    abiaqiou
        2
    abiaqiou   29 天前
    @Bazingal 等于说用 wsl2 的话,源代码直接放在 wsl2 中?不用 docker 的话,vscode 的 remote-container 如何使用?
    Bazingal
        3
    Bazingal   29 天前   ❤️ 1
    @abiaqiou 对,用 remote-wsl
    ch2
        4
    ch2   29 天前
    不需要 docker,node_modules 得保存在 WSL2 的 vhdx 里
    前端开发的话,wsl2 完美胜任,跟 linux/macos 体验一致
    zxCoder
        5
    zxCoder   29 天前
    我是 webstorm+wsl
    TypeError
        6
    TypeError   29 天前 via Android
    大部分 wsl2 可以胜任,
    小部分复杂依赖可以使用 docker 装
    Quarter
        7
    Quarter   29 天前 via iPhone
    我觉得直接 vs code 就可以啦,不知道为啥要 docker 和 wsl 啊
    Elliota
        8
    Elliota   29 天前 via Android
    我劝你别折腾,面相生产环境开发,折腾子系统的时间够你开几年的虚拟机了
    justrand
        9
    justrand   29 天前
    vagrant
    byzf
        10
    byzf   29 天前
    windows 上跑 wsl 消耗的资源,和跑一个 ubantu 虚拟机没有任何区别,甚至开虚拟机消耗的资源更少,而且 wsl 还有很多发行版跑不了,再加上 wsl 上各方面的环境和发行版还是有区别,这个用过 wsl 都能感受到。微软只是用这个东西来挖墙脚,里面掺点私活,并没有想真的拥抱 linux 。

    docker 解决了你什么问题呢? docker 在 windows 上跑 ubantu 的时候,底层也是跑了个虚拟机,开销不小。说白了你 windows 上开发一个软件,ubantu 上都没测试过就扔给运维去部署,合适吗,我觉得你这个还是测试流程和依赖管理的问题,和用什么工具关系不大。

    如果你机器是 windows 的,肯定还是在 windows 上开发、debug 是最高效的,直白的说就是你编译一次是一分钟还是五分钟的问题。正常来说你开发管开发,开发完了进入测试流程以后才会用到 docker 。
    inhzus
        11
    inhzus   29 天前 via iPhone
    wsl 有各种各样的问题,建议直接用 hyper-v/虚拟机,然后把桌面映射出来,见我之前的分享 https://v2ex.com/t/778002#reply30
    abiaqiou
        12
    abiaqiou   29 天前
    @byzf 是的,我第一次接触 docker 的时候,感觉这东西应该是给运维使用的。项目组无测试,我也不太熟悉 Linux 相关的相关依赖。这样看的话,docker 只是帮我解决了部署前的测试问题。
    yuningWang8
        13
    yuningWang8   29 天前
    wsl ( 2 )用了一年多,前端没问题。
    murmur
        14
    murmur   29 天前
    前端不用 docker 就是装 vs 编译器和 nodegyp 就可以,没遇到什么坑,毕竟是原生 windows,terminal 用 windows terminal 那个微软的 app,好看
    byzf
        15
    byzf   29 天前
    @yuningWang8 前端就算不用 wsl2,用 windows 开发也根本不会有任何问题。
    shyling
        16
    shyling   29 天前
    前端直接用 windows 版 node 一般也没啥问题啊
    lin07hui
        17
    lin07hui   29 天前
    vscode + node + PowerShell 7,vue create hello-world 开始撸码
    wunonglin
        18
    wunonglin   29 天前
    累不累啊
    james2013
        19
    james2013   29 天前
    webstorm 很香
    通用的操作方法,让我在 webstorm,idea,android studio,pycharm 等 ide 中无缝衔接
    everyx
        20
    everyx   29 天前
    Win10 + WSL2 + VSCode + Devcontainer 太卡了,已换 Arch Linux,丝般顺滑
    ReferenceE
        21
    ReferenceE   29 天前 via Android
    等你因为 wsl2 是完全隔离的虚拟机,折腾网络环境折腾得死去活来的时候,我再来看一遍
    hjc4869
        22
    hjc4869   29 天前
    @byzf Win11 上 WSL2 能做到 VM 内 linux 进程释放内存后宿主机秒回收,开销比直接装虚拟机好太多了。
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1029 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 19:14 · PVG 03:14 · LAX 12:14 · JFK 15:14
    ♥ Do have faith in what you're doing.