V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
yanguoyu
V2EX  ›  奇思妙想

迫于前端 windows 环境配置麻烦,来新同事环境搭建搞半天,搞一个这个客户端怎么样

  •  
  •   yanguoyu · 2021-02-10 10:28:28 +08:00 · 4532 次点击
    这是一个创建于 1142 天前的主题,其中的信息可能已经有所发展或是发生改变。

    基于 Docker 的可视化管理,项目运行在 Docker,本地编辑文件。主要解决问题是遇到不同人环境不一样可能会有很多奇怪的问题。 优点: 1: 不用担心不同的工程需要的 node 版本,npm 版本不一样需要切换 2: 不用担心环境不一样的问题 缺点: 1: 如果打开多个工程,会启用很多 docker,不知道性能咋样 2: 本地编辑 Docker 内部文件,不知道效率咋样 3: 可能本身用 mac,没有那么多奇怪的问题

    第 1 条附言  ·  2021-02-18 09:33:09 +08:00
    额,开始上班了,不是我觉得麻烦,是有时候大家统一麻烦,保证大家的开发环境一致。
    26 条回复    2021-02-18 15:28:47 +08:00
    imgbed
        1
    imgbed  
       2021-02-10 10:34:31 +08:00 via Android
    我一般会把重复的事情写成 cmd 命令文件存起来,复杂到无法写的话就没办法了
    dream4ever
        2
    dream4ever  
       2021-02-10 11:19:09 +08:00
    Docker 用来建立程序的运行环境,至于代码、配置文件什么的,放在宿主机中更合适吧,然后挂载到 Docker 容器里就行。
    also24
        3
    also24  
       2021-02-10 11:20:42 +08:00
    可以考虑通通丢进 wsl 用嘛。

    wsl 是支持导出导入的
    yanguoyu
        4
    yanguoyu  
    OP
       2021-02-10 11:20:58 +08:00
    @dream4ever 是的,可能我表达不清楚。
    yanguoyu
        5
    yanguoyu  
    OP
       2021-02-10 11:21:48 +08:00
    @also24 倒是没了解过 wsl
    yanguoyu
        6
    yanguoyu  
    OP
       2021-02-10 11:22:28 +08:00
    @imgbed 主要是考虑团队,个人怎么操作其实无所谓
    also24
        7
    also24  
       2021-02-10 11:27:43 +08:00
    @yanguoyu #5
    wsl 比 docker 重一些,docker 也可以跑在 wsl 里面。
    lysS
        8
    lysS  
       2021-02-10 11:28:28 +08:00
    %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit cd /d "%~dp0"
    @start %windir%\System32\rundll32.exe sysdm.cpl,EditEnvironmentVariables
    @exit
    将以上命令保存为 hj.bat ,把文件放到 C:\Windows\System32 文件夹,然后 win+R,输入 hj 后回车
    ppmoon
        9
    ppmoon  
       2021-02-10 11:44:30 +08:00
    https://www.vagrantup.com/ vagrant 就是干这个的。
    yanguoyu
        10
    yanguoyu  
    OP
       2021-02-10 11:52:26 +08:00
    @ppmoon 粗略看了下,感觉比我想要的多很多
    walpurgis
        11
    walpurgis  
       2021-02-10 12:38:26 +08:00
    前端开发要不少 node 脚本,环境用 docker 管理是有点麻烦的,win 下 docker 本质还是虚拟机,后来还是直接切到 linux 环境了
    yaphets666
        12
    yaphets666  
       2021-02-10 14:15:30 +08:00
    前端 windows 环境配置麻烦???
    龟龟
    下载 nodejs 安装一路下一步装完重启
    npm install 完事了

    还需要啥啊?
    需要切换不同的 nodejs 版本 有 nvm 这个工具 随便切换

    麻烦是 docker 的问题 不是前端的问题啊
    cmdOptionKana
        13
    cmdOptionKana  
       2021-02-10 14:21:16 +08:00   ❤️ 1
    直接上虚拟机,一步到位。

    SSH 连虚拟机很方便,甚至直接在虚拟机里跑 Linux 桌面也可以,任君选择。

    这样就能同时使用 windows 和 linux,啥事都不耽误。
    gouflv
        14
    gouflv  
       2021-02-10 15:05:10 +08:00 via iPhone
    前端要啥 docker ?团队不会是没有开发服务器吧
    darknoll
        15
    darknoll  
       2021-02-10 16:55:45 +08:00 via Android
    非要一键脚本那种才不麻烦吗?
    我觉得配置过程也是一个熟悉的过程
    amundsen
        16
    amundsen  
       2021-02-10 16:57:29 +08:00
    前端环境配置不会很复杂的
    AndyAO
        17
    AndyAO  
       2021-02-10 17:16:21 +08:00
    在我工作中的大部分环境配置可以通过 PowerShell 脚本来自动化的解决.

    但是很少有人会学 , 毕竟大多数人的生产环境并不在 Windows 上 , 学 Shell 的多 , 学这个的就少了.

    实际上有用的很,而且 PowerShell 目前已经实现跨平台了,这些经验也可以用在其他的各种地方.

    如果如果你用心学学,然后通过 PowerShell 或者再辅助一些其他脚本来实现环境部署的自动化,那么应该会让别人对你刮目相看.

    对于一些比较常见的其他环境可以用 Scoop , 这个就是专门为了开发者部署一些环境用 PowerShell 开发的包管理器 , 有很多人已经写好了脚本 , 比如安装个 Java 或者 MinGW 又或者 Cygwin , 简直方便极了,只需要 1 个命令就可以 ,不用做任何事情 , 这个太舒适了 !

    否则的话要在 GUI 上点点戳戳的 , 安装好了之后,也许还要去配置环境变量.
    jeremaihloo
        18
    jeremaihloo  
       2021-02-10 19:14:41 +08:00
    前端环境配置复杂?我觉着还好呀
    yanzhiling2001
        19
    yanzhiling2001  
       2021-02-10 20:18:32 +08:00
    是的,虚拟机路过看看,自从上了虚拟机,腰不酸了 腿不疼了,拷个虚拟机文件就走,随时打开,随时快照
    pastgift
        20
    pastgift  
       2021-02-11 00:09:34 +08:00
    我也支持用虚拟机,配置好之后打个快照,导出回滚都很方便
    唯一不方便的就是体积偏大点
    chairuosen
        21
    chairuosen  
       2021-02-11 00:22:51 +08:00
    所有不是亲手搭的环境,出了问题绝对不知道怎么搞
    xfcy
        22
    xfcy  
       2021-02-11 00:24:54 +08:00
    vagrant 了解一下
    dayeye2006199
        23
    dayeye2006199  
       2021-02-11 02:43:49 +08:00
    你说的完全就是个 vagrant 。环境配置好以后,打包;新同事直接拉下来使用。打开 22 和 80 端口,就可以开发调试了。其实后面就是个虚拟机
    azh7138m
        24
    azh7138m  
       2021-02-12 20:24:06 +08:00 via iPhone
    额 麻烦在哪里?
    jinliming2
        25
    jinliming2  
       2021-02-13 10:34:55 +08:00 via iPhone
    VSCode 提供了这样的解决方案了啊,写一个脚本,然后 VSCode 里自动基于这个脚本去创建 Docker,然后自动连接到这个容器里进行远程开发。
    去 VSCode 官方文档看看?
    no1xsyzy
        26
    no1xsyzy  
       2021-02-18 15:28:47 +08:00
    似乎 vagrant 几乎完全就是你说的这个。
    Windows 下 Docker 还是虚拟机,用 WSL2 backend 的话访问文件宿主文件系统可能还是走 p9 ?那效率就……
    尤其 npm i,想想就带劲。

    不过我觉得 #21 说得也有道理,安装过一遍 Arch Linux 之后对于 *nix 系统是个什么情况基本心中有数。
    就算只是玩玩,也至少搭一遍环境。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4836 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 09:55 · PVG 17:55 · LAX 02:55 · JFK 05:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.