我一直在努力更新节点/ npm软件包或npm本身。
我有一台Ubuntu机器,我在其中安装了要更新的全局npm。
npm install -g npm
导致各种'/ usr / local / lib'访问权限被拒绝的错误。
我可以使用sudo
,但是默认用户帐户主目录中的~/.npm
目录是root拥有的,而不是我拥有的。我认为在安装或更新软件包时会遇到麻烦,总的来说这似乎是个坏主意。我正在以我的身份而不是root身份运行npm。
通过搜索,我发现了一些半熟的解决方法,但是我印象很深,我做错了什么。也许我只是误解了眼前的问题。我难以相信npm
这样的长期且广泛使用的项目会遭受这种基本缺陷的困扰?
在常规linux环境中全局安装npm的最正确,最简单的方法是什么?
请勿使用Ubuntu的节点和npm版本。
Ubuntu的存储库将您锁定在节点的一个版本中,这也会限制您使用的npm版本。
[使用nvm或n之类的节点管理器。它们允许使用一个命令来更改节点版本。
甚至docker containers。使用Dockerfile,您可以创建模仿您的生产环境的环境(如果将应用程序部署为Docker容器,则该环境与生产环境基本相同)。