nodejs不同版本的差异还是蛮多的,比如obj?.a 在nodejs12是不支持的,必须得升级到14才可以。但是centos yum 默认安装的,或者系统集成的nodejs版本都是很老的。项目上传到生产环境无法跑。所以,第一个是在项目中,锁定nodejs版本,比如:

{
  "name": "bk-vision",
  "version": "0.2.7",
  "private": true,
  "description": "bk-vision",
  "keywords": [
    "bk-vision",
    "可视化平台"
  ],
  "engines": {
    "node": "^v16.15.0",
    "npm": "^8.5.5"
  },
  "main": "dist/main.js",
}

本地nodejs版本管理,请参考:《nvm使用详解——命令解析大全》、《npm包管理问题:安装nvm后如何管理各个版本间包

本篇主要讲linux 服务器上 升级方法,nodejs版本、

看了官网的文档:https://www.linode.com/docs/guides/how-to-update-nodejs/  本篇做最详细的补充

通过npm升级npm和node升级的正确方式

npm升级npm

npm install npm@latest -g

检查 npm 的当前版本,使用命令:npm -v

清除npm cache

npm cache clean -f

npm升级nodejs

安装 n 模块

npm install -g n

安装最新的稳定版本

n stable

你也可以定制一个自己喜欢的版本:n 16.5.0

n – Interactively Manage Your Node.js Versions

https://www.npmjs.com/package/n

因为n比nvm简单,所以在linux上直接npm 来升级nodejs,我选择n

通过brew 更新 Node.js version on macOS

brew update
brew upgrade node

yum安装新版nodejs

yum clean all
rm -fv /etc/yum.repos.d/nodesource*
curl --silent --location https://rpm.nodesource.com/setup_16.x | sudo bash
sudo yum -y install nodejs

curl bash 做了什么?

curl表示获取地址对应的内容,而https://rpm.nodesource.com/setup_14.x就是一段shell脚步:

#!/bin/bash
SCRSUFFIX="_14.x"
NODENAME="Node.js 14.x"
NODEREPO="pub_14.x"
NODEPKG="nodejs" print_status() {
  local outp=$(echo "$1") # | sed -r 's/\n/\n## /mg')
  echo
  echo -e "## ${outp}"
  echo
}
##省略

而|是管道符,表示通过bash执行上述shell脚步内容,脚步对yum的node源地址做了一些修改和设置

curl哪个nodejs版本?

具体查看:https://github.com/nodesource/distributions,查找 Installation instructions,

Node.js v14.x:

# Using Ubuntu
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
# Using Debian, as root
curl -fsSL https://deb.nodesource.com/setup_14.x | bash -
apt-get install -y nodejs

Node.js LTS (v16.x):

# Using Ubuntu
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
# Using Debian, as root
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash -
apt-get install -y nodejs

转载本站文章《nodejs升级到最新LTS版本方法汇总:linux/mac/window—npm/yum/ssh》,
请注明出处:https://www.zhoulujun.cn/html/webfront/ECMAScript/nodejs/8825.html

nodejs升级到最新LTS版本方法汇总:linux/mac/window—npm/yum/ssh的更多相关文章

  1. centos7 docker升级到最新稳定版本

    原文:centos7 docker升级到最新稳定版本 一.前言 docker的版本分为社区版docker-ce和企业版dokcer-ee社,区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外 ...

  2. 【web】Ubuntu上安装nodejs 4.x 5.x版本方法

    在Linux(ubuntu server)上面安装NodeJS的正确姿势 上一篇文章,我介绍了 在Windows中安装NodeJS的正确姿势,这一篇,我们继续来看一下在Linux上面安装和配置Node ...

  3. nodejs+express4.0+mongodb安装方法 for Linux, Mac

    废话不多说 1:下载nodejs包 下载地址例如以下:http://www.nodejs.org/download/ 下载source code版本号须要解压后到其文件夹运行./configure,然 ...

  4. CentOS6下用yum升级系统最新内核版本

    首先当你决定升级内核时,要想清楚为什么升级内核,因为升级内核会带来很多麻烦.所以这种事情能避免就避免 导入 Public Key rpm --import https://www.elrepo.org ...

  5. nodejs的express框架(request,response方法汇总)

    Response 对象 - response 对象表示 HTTP 响应,即在接收到请求时向客户端发送的 HTTP 响应数据.常见属性有: res.app:同req.app一样 res.append() ...

  6. 在ubuntu上安装最新稳定版本的node及npm

    背景 通过ubuntu官方apt安装工具安装的node是最新LTS版本的,而本人是个有点强迫症的人,喜欢追求新的东西,也就是想方设法想要去安装最新版本的node,所以本文也就产生了,附上ubuntu安 ...

  7. Windows 下Npm和NodeJS升级

    前提电脑中已经安装过NodeJS, npm.现在需要进行升级操作. 1.查看当前的npm和NodeJs的版本: C:\Users\Administrator>node -vv4.4.3 C:\U ...

  8. 升级openssh到高版本

    linux升级openssh到高版本 可以解决OpenSSH 安全漏洞(CVE-2018-15919)和SSH服务器类型和版本 如果是新服务器,需要安装对应命令vim 上传下载等命令 安装上传或者下载 ...

  9. Linux(Fedora)下NodeJs升级最新版本(制定版本)

    Linux(Fedora)下NodeJs升级最新版本(制定版本) 首先安装n模块: npm install -g n 升级node.js到最新稳定版 n stable 升级node.js到制定版本 n ...

  10. nodejs升级的两种方法

    方法一: 用n升级nodejs # 全局安装n$ npm install -g n# 升级到最新稳定版$ n stable # 升级到最新版$ n latest# 升级到定制版$ n v7.10.0# ...

随机推荐

  1. Pinely Round 2 (Div. 1 + Div. 2) (CF1863)

    本来开了某场远古 Div 1,然后学了一堆前置知识至今仍然不会 E.换一场写来得及吗? A. Channel 模拟,略. B. Split Sort Description 给你一个长度为 \(n\) ...

  2. 20.2 OpenSSL 非对称RSA加解密算法

    RSA算法是一种非对称加密算法,由三位数学家Rivest.Shamir和Adleman共同发明,以他们三人的名字首字母命名.RSA算法的安全性基于大数分解问题,即对于一个非常大的合数,将其分解为两个质 ...

  3. 使用django 定时任务 (Django + celery + beat )

    安装 django + celery + results https://www.cnblogs.com/lanheader/p/13615772.html 安装 django-celery-beat ...

  4. 使用 PPO 算法进行 RLHF 的 N 步实现细节

    当下,RLHF/ChatGPT 已经变成了一个非常流行的话题.我们正在致力于更多有关 RLHF 的研究,这篇博客尝试复现 OpenAI 在 2019 年开源的原始 RLHF 代码库,其仓库位置位于 o ...

  5. Kubernetes Gateway API 攻略:解锁集群流量服务新维度!

    Kubernetes Gateway API 刚刚 GA,旨在改进将集群服务暴露给外部的过程.这其中包括一套更标准.更强大的 API资源,用于管理已暴露的服务.在这篇文章中,我将介绍 Gateway ...

  6. UData+StarRocks在京东物流的实践

    1 背景 数据服务与数据分析场景是数据团队在数据应用上两个大的方向,行业内大家有可能会遇到下面的问题: 1.1 数据服务 烟囱式开发模式:每来一个需求开发一个数据服务,数据服务无法复用,难以平台化,技 ...

  7. 黑客玩具入门——4、漏洞扫描与Metasploit

    1.Legion漏洞扫描分析工具 Legion是Sparta的一个分支,它是一个开源的.易于使用的.超级可扩展的.半自动的网络渗透测试框架.它是一款Kali Linux系统默认集成的Python GU ...

  8. 数据库系列:MySQL InnoDB锁机制介绍

    数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版) 数据库系列:高并发下的数据字段变更 数据库系列:覆盖索引和规避回表 数据库系列:数据库高可用及无损扩容 数据库 ...

  9. 探秘C#中的秘密通道:五种引人注目的方法调用内部或私有方法

    在 C# 中,可以使用不同的方法调用内部或私有方法.下面分别介绍通过反射.MethodInfo.CreateDelegate.表达式(树).动态方法(call).动态方法(calli)这五种方法. 1 ...

  10. 在自动化测试时,Python常用的几个加密算法,你有用到吗

    本文分享自华为云社区<『加密算法』| 自动化测试时基于Python常用的几个加密算法实现,你有用到吗?>,作者:虫无涯 . 写在前边 这几天做自动化测试,遇到一个问题,那就是接口的请求的密 ...