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

MacOS 如何干净地安装 NPM?

  •  
  •   dangyuluo · 2023-04-28 16:01:18 +08:00 · 2995 次点击
    这是一个创建于 604 天前的主题,其中的信息可能已经有所发展或是发生改变。

    对 NodeJS 不是很了解,但是有个工具需要通过 npm 安装。请问 MacOS 下有什么推荐的 npm 虚拟环境么?我不想每次启动 shell 都默认引入一大堆包。

    25 条回复    2023-05-03 11:29:01 +08:00
    coyoteer
        1
    coyoteer  
       2023-04-28 16:04:03 +08:00
    为什么直接装 npm“每次启动 shell 都默认引入一大堆包”?
    yuhangch
        2
    yuhangch  
       2023-04-28 16:23:32 +08:00
    cat /usr/local/opt/node@16/bin/npm
    #!/usr/bin/env node
    require('../lib/cli.js')(process)
    Puteulanus
        3
    Puteulanus  
       2023-04-28 16:24:44 +08:00
    https://nodejs.org/en/download 有 macOS Binary 下载
    crysislinux
        4
    crysislinux  
       2023-04-28 16:28:19 +08:00
    对多版本没有需求就 brew 装好了。你说的引入一大堆包是指 nvm 之类的吧。没需求你就可以不用。
    tanhui2333
        5
    tanhui2333  
       2023-04-28 16:32:50 +08:00 via Android
    曲线一点,把这些跑在 docker 里面
    beginor
        6
    beginor  
       2023-04-28 19:53:28 +08:00 via Android
    @tanhui2333 Mac 上 docker 的磁盘 IO 不行, 尝试过这个,放弃了
    huijiewei
        7
    huijiewei  
       2023-04-28 20:15:24 +08:00
    brew install node 就挺干净的啊。
    pC0oc4EbCSsJUy4W
        8
    pC0oc4EbCSsJUy4W  
       2023-04-28 20:31:07 +08:00
    xlongye
        9
    xlongye  
       2023-04-28 20:41:47 +08:00
    fnm 了解一下
    nino
        10
    nino  
       2023-04-28 21:08:24 +08:00
    不用安装,直接用 npx 运行
    Leonard
        11
    Leonard  
       2023-04-28 21:14:19 +08:00
    我是用 brew 的
    IvanLi127
        12
    IvanLi127  
       2023-04-28 21:16:23 +08:00 via Android
    欸。。有这么脏吗🤣
    seanzxx
        13
    seanzxx  
       2023-04-29 03:53:05 +08:00
    还是 docker 舒服
    good
        14
    good  
       2023-04-29 09:00:50 +08:00
    @beginor Mac 上,我把 Docker 装到 Ubuntu 里效果还不错,要跑什么服务在本机上跑个 Nginx 反代一样就 Ok
    good
        15
    good  
       2023-04-29 09:01:33 +08:00
    @beginor Ubuntu 虚拟机里
    cnhongwei
        16
    cnhongwei  
       2023-04-29 09:03:28 +08:00
    使用 volta 安装管理 nodejs 的不同版本,这个和虚拟环境差不多。
    l4ever
        17
    l4ever  
       2023-04-29 11:23:41 +08:00
    用 nvm 管理 nodejs 版本.
    nvm ls
    nvm install 16.19.1
    nvm use 16.19.1
    tanhui2333
        18
    tanhui2333  
       2023-04-29 12:01:02 +08:00
    @beginor 所谓的磁盘 IO 不行会造成什么难以忍受的影响呢
    xtinput
        19
    xtinput  
       2023-04-29 12:22:59 +08:00
    @good Docker Desktop 本身也是跑一台虚拟机,我是直接用系统的虚拟框架跑的 Debian ,Docker 跑 Debian 里面,macOS 上直接连接操作,没装虚拟机软件网卡只能 nat
    @beginor 直接找个 vmcli 调用系统的虚拟框架创建虚拟机,在虚拟机里跑 Docker 就行
    自荐: https://github.com/darvintang/dvtvmcli

    不要求版本就用 brew ,要求版本就 nvm ,然后自己配置好 prefix
    xtinput
        20
    xtinput  
       2023-04-29 12:24:28 +08:00
    @tanhui2333 macOS 上的 Docker Desktop 很不好用,跑台虚拟机,在虚拟机里面跑 Docker 更好
    good
        21
    good  
       2023-04-29 14:26:35 +08:00
    @xtinput 我是在 Parallels Desktop 里跑的 Ubuntu 虚拟机,比直接装在 Mac 效果好太多了,老的 Intel Mac 改虚拟机 风扇热度有很大改观.
    MrKrabs
        22
    MrKrabs  
       2023-04-29 17:01:54 +08:00
    nvm 装到外置 ssd
    beginor
        23
    beginor  
       2023-04-29 18:34:52 +08:00 via Android
    @good 在虚拟机里面的话映射磁盘文件什么的不方便
    beginor
        24
    beginor  
       2023-04-29 18:36:45 +08:00 via Android
    @tanhui2333 就像你现在用机械盘那样
    DIMOJANG
        25
    DIMOJANG  
       2023-05-03 11:29:01 +08:00 via iPhone
    我最近也遇到了这个问题,不过根据我的初步调查,好像 npm install 的包都是安装在工作目录下,并不会全局安装(除非 -g 指定)。

    不知道这个信息准不准确,如果有不准确的地方还请大佬拍砖🥲
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   992 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 114ms · UTC 18:48 · PVG 02:48 · LAX 10:48 · JFK 13:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.