【新手】Linux 安装nodejs v18.19.0详细教程【各版本通用】

【新手】Linux 安装nodejs v18.19.0详细教程【各版本通用】
👨‍🎓博主简介

🏅ZEEKLOG博客专家
🏅云计算领域优质创作者
🏅华为云开发者社区专家博主
🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
🐋 希望大家多多支持,我们一起进步!😄
🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏 ⭐️ 加关注+💗

文章目录

一、下载、安装

1、下载地址

nodejs官网:https://nodejs.org/

nodejs官网下载地址:https://nodejs.org/download/release/

nodejs官网下载地址(v18.19.0直达):https://nodejs.org/download/release/v18.19.0/
  • 根据自己的情况选择,我这里是选择Linux 版本;找到linux-x64.tar.gz
下载好之后上传到服务器上,并进行安装;

2、安装nodejs

# 上传到服务器上将文件解压到/usr/local/下并重命名为nodejstar xzf node-v18.19.0-linux-x64.tar.gz -C /usr/local/ cd /usr/local/ mv node-v18.19.0-linux-x64 nodejs 
  • 配置环境变量(在profile文件最后添加export两行)
vim /etc/profile exportNODE_HOME=/usr/local/nodejs exportPATH=$NODE_HOME/bin:$PATH
  • 使环境变量生效
source /etc/profile 

3、验证nodejs安装是否成功

至此,node就已经安装成功了,我们来验证一下;

# 执行node -v 和 npm -v查看nodejs版本; node -v npm -v 

可以看到已经成功安装了;

二、环境配置及优化

1、设置npm全局模块目录和缓存目录

# 查看默认npu配置npm config ls

接下来我们就需要修改默认安装的路径;

1.1 配置 npm 默认安装全局路径
npm config set prefix '/usr/local/nodejs'# 查看prefix配置是否配置成功npm config get prefix npm config ls
1.2 创建并配置 npm 缓存目录
# 创建npm缓存路径mkdir -p /usr/local/nodejs/lib/node_cache # 配置npm缓存路径npm config set cache '/usr/local/nodejs/lib/node_cache'# 查看npm配置路径是否配置成功npm config get cache npm config ls

2、修改npm默认源为淘宝源

默认源为:https://registry.npmjs.org
npm config set registry https://registry.npm.taobao.org 

即可修改成功,查看npm源是否更换:

npm config get registry npm config ls

可以看到源已经更新为淘宝源。

三、测试验证

npminstall -g pnpm# 或直接使用--registry指定某个源下载npminstall -g cnpm pnpm --registry=https://registry.npm.taobao.org 
  • 命令解析:
命令解析
npm install是安装的意思
-g是指全局安装
cnpm是安装的包
–registry是指定安装的镜像源

如果安装时遇到此报错,是因为证书过期;可以取消ssl证书验证;

npm config set strict-ssl false

取消之后再次安装就可以了;

安装好之后可以在/usr/local/nodejs/lib/node_modules中看到;

四、常见问题

常见报错1:ssl证书报错

如果安装时遇到此报错,是因为证书过期;可以取消ssl证书验证;

npm config set strict-ssl false

取消之后再次安装就可以了;

常见报错2:执行node -v 查看时提示glibc错

这是因为我用的centos系统,本身的glibc版本太低了,所以才会报这个错,可以更换操作系统或升级glibc,但升级glibc可能会给系统造成不可逆的伤害,需谨慎升级;

  • 推荐更换操作系统,可以使用ubuntu20.04的;
  • 也推荐可以使用docker,镜像用ubuntu20.04的就行(docker pull liuchenyang/ubuntu20.04);
  • 也可以直接拉取我已经做好的镜像;docker pull liuchenyang/nodejs:v18.19.0

如果在拉取镜像失败或超时的时候可参考:【Docker】完美解决拉取镜像超时报错:ERROR: Get https://registry-1.docker.io/v2/



至此,nodejs就已经安装完成了!!!

五、相关文章

文章标题文章链接
【新手】win10安装nodejs V16.9.0详细教程【各版本通用】https://blog.ZEEKLOG.net/liu_chen_yang/article/details/136391598
【新手】Linux 安装nodejs v18.19.0详细教程【各版本通用】https://blog.ZEEKLOG.net/liu_chen_yang/article/details/148451847

Read more

Kubernetes与开发语言:重新定义.NET Core与Java的云原生未来

Kubernetes与开发语言:重新定义.NET Core与Java的云原生未来

文章目录 * 一、 历史交汇:不同的起点,相同的云原生归宿 * 二、 部署与运行:在K8s中的不同生存哲学与实践 * 三、 配置、监控与可观测性:生态工具链的碰撞 * 四、 微服务架构:框架与平台的竞合 * 五、 总结:殊途同归,各擅胜场 在云原生浪潮席卷全球的今天,Kubernetes(K8s)已从谷歌内部的一个容器编排工具,蜕变为云计算时代的基础设施基石,它重塑了应用构建、部署和运维的范式。对于企业技术栈中的两大支柱——以企业级稳健著称的Java和凭借跨平台重生而焕发活力的.NET Core,Kubernetes的到来并非简单的运行环境变迁,而是一场意义深远的、从开发理念到技术生态的全面重塑。本文将深入剖析Kubernetes对这两种主流开发语言的差异化影响,揭示它们与容器编排平台之间千丝万缕的联系,以及在企业数字化转型中的全新定位。 一、 历史交汇:不同的起点,相同的云原生归宿 Java的漫长进化与Kubernetes的天然契合 Java与容器化的结合,是一场“厚积薄发”的相遇。在Kubernetes出现之前,Java世界已经通过Spring Clou

By Ne0inhk
【Java 开发日记】我们来讲一讲阻塞队列及其应用

【Java 开发日记】我们来讲一讲阻塞队列及其应用

目录 什么是阻塞队列? 阻塞队列的实现原理 核心组件 核心方法原理 如何使用阻塞队列实现生产者-消费者模型 实现步骤 代码示例 代码分析 Java中的阻塞队列实现 总结 什么是阻塞队列? 阻塞队列是一种特殊的队列,它在数据结构的基础上附加了两个额外的操作特性: 1. 阻塞插入:当队列已满时,尝试向队列中插入元素的线程会被阻塞,直到队列中有空闲位置。 2. 阻塞移除:当队列为空时,尝试从队列中获取元素的线程会被阻塞,直到队列中有新的元素被加入。 简单来说,阻塞队列是一个线程安全的、支持阻塞等待的生产者-消费者模型的核心容器。 阻塞队列的实现原理 阻塞队列的实现原理主要依赖于 锁(Lock) 和 条件变量(Condition)。在Java中,这通常通过 ReentrantLock 和 Condition 来实现。 我们以一个简单的有界数组阻塞队列为例,剖析其核心原理: 核心组件 * 一个队列:通常用数组或链表实现,用于存储元素。 * 一把锁:一个 ReentrantLock,用于保证所有操作的线程安全性。

By Ne0inhk

RabbitMQ 创建队列的 5 种方式全解析:从手动到自动,小白也能选对方案(Spring Boot + Java 实战)

视频看了几百小时还迷糊?关注我,几分钟让你秒懂! 在使用 RabbitMQ 开发消息系统时,“队列怎么创建” 是每个开发者都会遇到的问题。有人用管理后台点点点,有人写代码自动建,还有人靠运维提前配好……到底哪种方式更好? 本文将全面对比 RabbitMQ 创建队列的 5 种主流方式,结合 真实场景 + Spring Boot 代码 + 正反案例 + 注意事项,帮你避开“上线就崩”的大坑! 一、为什么“怎么创建队列”这么重要? 🎯 真实需求场景 你正在开发一个订单服务: * 用户下单后,发送消息到 order.queue; * 消费者监听该队列处理业务。 问题来了: 这个 order.queue 谁来创建?什么时候创建?如果没创建会怎样? 后果很严重: * 如果队列不存在,消息会被 直接丢弃(除非

By Ne0inhk
【JAVA全栈项目】弧图图-智能图床SpringBoot+MySQL API接口结合Redis+Caffeine多级缓存实践解析

【JAVA全栈项目】弧图图-智能图床SpringBoot+MySQL API接口结合Redis+Caffeine多级缓存实践解析

文章案例具体代码链接:https://github.com/whltaoin/hututu 提交版本:e67453a26f0bbe78ce075a550bafb01ba82aa9ff 简言 在后端开发中,API接口是服务间通信的核心载体,而数据存储与缓存策略则直接决定了接口的性能与稳定性。Spring框架凭借其强大的生态成为API开发的首选,MySQL作为关系型数据库提供了可靠的数据持久化支持。当系统并发量提升时,单一数据库架构易出现性能瓶颈,此时引入Redis(分布式缓存)与Caffeine(本地缓存)构建多级缓存体系,成为优化性能的关键方案。本文将从基础实现出发,深入探讨多级缓存的优势、劣势、适用场景及实践注意点。 文章目录 * 简言 * 一、基础架构:Spring+MySQL实现API接口 * 1.1 核心组件与依赖 * 1.2 核心实现流程 * 二、多级缓存:Redis+Caffeine的组合逻辑 * 2.1 组件特性对比 * 2.2 多级缓存工作流程 * 三、多级缓存的优势与劣势

By Ne0inhk