【阿里云】云服务器ECS运行node服务

news/2024/9/19 15:38:55/ 标签: centos, node.js, nvm

本文介绍如何在(CentOS 7.9 64位)操作系统的ECS实例上,安装Node.js并部署测试项目。

使用工具:FinalShell4.3.10

目录

步骤一:部署Node.js环境

1.远程连接已创建的ECS实例。

 2.部署Node.js环境。

a.安装分布式版本管理系统Git。

nvm%E7%9B%AE%E5%BD%95%E4%B8%8B%EF%BC%8C%E5%B9%B6%E6%A3%80%E6%9F%A5%E6%9C%80%E6%96%B0%E7%89%88%E6%9C%AC%E3%80%82-toc" style="margin-left:80px;">b.使用Git将NVM的源码克隆到本地的~/.nvm目录下,并检查最新版本。

c.依次运行以下命令,配置NVM的环境变量。

d.运行以下命令,修改npm镜像源为阿里云镜像,以加快Node.js下载速度。

e.运行以下命令,查看Node.js版本。

f.安装多个Node.js版本。

        i.安装v14.0.0版本。

        ii.安装v16.0.0版本。

g.查看已安装的Node.js版本。

步骤二:部署测试项目

1.依次运行以下命令,创建测试项目文件example.js。

a.返回/root路径。

b.创建测试项目文件example.js。

2.修改项目文件example.js。

a.运行以下命令打开example.js。

b.按 i 键进入编辑模式,并将以下内容添加至example.js文件中。

c.添加完成后,按 Esc 键退出编辑模式,并输入:wq后按Enter键,保存退出文件。

3.运行项目并得到项目的端口号。

4.运行以下命令,列入系统已在监听的端口信息。

5.在ECS实例的安全组中,添加入方向规则,放行项目中配置的端口号。

6.在本地Windows主机或其他任一具有公网访问能力的Windows主机中,打开浏览器并访问http://:<项目端口号>。实例公网ip地址>


步骤一:部署Node.js环境

1.远程连接已创建的ECS实例。

a.点击FinalShell ,新建连接。输入ssh账号密码和公网ip。端口默认22。

连接主机...
连接主机成功
Last login: Tue May 14 11:09:03 2024 from xxx.x.x.xxxWelcome to Alibaba Cloud Elastic Compute Service !

 2.部署Node.js环境。

使用NVM安装多个Node.js版本

NVM(Node Version Manager)是Node.js的版本管理软件,使您可以轻松在Node.js各个版本间进行切换。适用于长期做node开发的人员或有快速更新node版本、快速切换node版本的场景。

具体操作步骤如下:

a.安装分布式版本管理系统Git。

yum install git -y

nvm%E7%9B%AE%E5%BD%95%E4%B8%8B%EF%BC%8C%E5%B9%B6%E6%A3%80%E6%9F%A5%E6%9C%80%E6%96%B0%E7%89%88%E6%9C%AC%E3%80%82">b.使用Git将NVM的源码克隆到本地的~/.nvm目录下,并检查最新版本。

❓ 说明  由于网络原因,可能会出现无法克隆的问题,建议您多尝试几次。

git clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`

c.依次运行以下命令,配置NVM的环境变量。

echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile

d.运行以下命令,修改npm镜像源为阿里云镜像,以加快Node.js下载速度。

export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node

e.运行以下命令,查看Node.js版本。

nvm list-remote

f.安装多个Node.js版本。

        i.安装v14.0.0版本。
nvm install v14.0.0
        ii.安装v16.0.0版本。
nvm install v16.0.0

g.查看已安装的Node.js版本。

nvm ls

返回结果如下所示,表示当前已安装v14.0.0、v16.0.0两个版本,正在使用的是v16.0.0版本。

        v14.0.0
->      v16.0.0
default -> v14.0.0
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.0.0) (default)
stable -> 16.0 (-> v16.0.0) (default)
lts/* -> lts/hydrogen (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.1 (-> N/A)
lts/hydrogen -> v18.16.1 (-> N/A)

说明 您可以运行nvm use <版本号>命令切换Node.js的版本。例如,切换至Node.js v14.0.0版本的命令为nvm use v14.0.0。

高版本会出现不兼容情况,请根据实际情况安装和切换。

步骤二:部署测试项目

1.依次运行以下命令,创建测试项目文件example.js。

a.返回/root路径。

cd

b.创建测试项目文件example.js。

touch example.js

2.修改项目文件example.js。

a.运行以下命令打开example.js。

vim example.js

b.按 i 键进入编辑模式,并将以下内容添加至example.js文件中。

本示例中,项目占用的端口号为3000、输出的内容为Hello World。您需要根据实际的业务需求自行配置项目内容(res.end)、端口号(const port)等信息。

const http = require('http');
const hostname = '0.0.0.0';
const port = 3000;
const server = http.createServer((req, res) => { res.statusCode = 200;res.setHeader('Content-Type', 'text/plain');res.end('Hello World\n');
}); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`);
});

c.添加完成后,按 Esc 键退出编辑模式,并输入:wq后按Enter键,保存退出文件。

3.运行项目并得到项目的端口号。

node ~/example.js &

4.运行以下命令,列入系统已在监听的端口信息。

netstat -tpln

本示例中,返回的结果列表中包含端口3000,表明项目正常运行。

5.在ECS实例的安全组中,添加入方向规则,放行项目中配置的端口号。

本示例中,项目端口号为3000。

6.在本地Windows主机或其他任一具有公网访问能力的Windows主机中,打开浏览器并访问http://<ECS实例公网IP地址>:<项目端口号>。

本示例中,<项目端口号>为3000。访问到的测试项目如下图所示:


http://www.ppmy.cn/news/1462019.html

相关文章

通过 AWS Glue 同步 MaxCompute 数据到 S3

1. 下载驱动 下载 3.3.6 版本的 driver wget https://github.com/aliyun/aliyun-odps-jdbc/releases/download/v3.3.6/odps-jdbc-3.3.6-jar-with-dependencies.jar将下载的jar包上传到 S3 指定目录下。(版本会影响方案的成功&#xff0c;4.x 以上版本验证是不可行的) 2. 在 …

小米15曝光?可能会要稍微涨价

也许是感受到了智能机市场的逐渐复苏&#xff0c;最近各大手机品牌发售新品的速度明显加快了。从4月份的Redmi、一加&#xff0c;再到5月份一大堆vivo、OPPO新机型的发布。而近日&#xff0c;有关小米14即将发售的消息也是悄咪咪的放了出来。 去年发售的小米14可以说是狠狠地让…

吃透前端文件上传与文件相关操作

最近在学文件上传的操作,所以想把学习到东西写成一文章 这片文章是我以小白视角 慢慢学习并熟悉前端文件相关操作的流程总结出来的 前端文件上传 我首先想到是 <input type"file">选择文件</input>如果我们想限制上传文件的格式,大小或进行裁剪分片上传…

前端面试题日常练-day12 【面试题】

题目 希望这些选择题能够帮助您进行前端面试的准备&#xff0c;答案在文末。 1. 在JavaScript中&#xff0c;以下哪个关键字用于声明一个变量&#xff1f; a) letb) varc) constd) all of the above2. 下面哪个方法可以用于将一个字符串转换为整数&#xff1f; a) toInteger(…

【基础算法总结】二分查找二

二分查找二 1.山脉数组的峰顶索引2.寻找峰值3.寻找旋转排序数组中的最小值4.点名 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x1f603; 1.山脉数组的…

汇编个位数求和实验

title: 汇编求和实验 keywords: 汇编 tags: [汇编] categories: 嵌入式 汇编求和实验 刚开始学习汇编 给大家做个参考 实验 5 子程序 5.1 实验目的 ①掌握利用堆栈传递参数的子程序调用方法。 ②过程调用伪指令&#xff1a;PROC&#xff0c;ENDP&#xff0c;NEAR和FAR。 ③8088…

Tomcat闪退

Tomcat闪退可能由多种原因引起&#xff0c;包括内存不足、程序异常、端口冲突、配置文件错误、版本不兼容、硬件故障等。以下是一些解决Tomcat闪退问题的常见方法&#xff1a; 检查内存&#xff1a;Tomcat运行需要大量的内存资源。如果服务器内存不足&#xff0c;可以尝试增加…

探测器 烟尘水汽 笔记

目录 探测器穿透水汽 1. 毫米波雷达 2. 红外摄像机 3. LIDAR&#xff08;光检测与测距&#xff09; 4. 热成像仪 5. 超声波传感器 探测器穿透烟尘 探测器穿透水汽 能穿透水汽的探测设备主要包括使用特定波段的雷达和红外技术的设备。这些技术能有效应对由雾、雨、水汽等…

Rust Web开发框架actix-web入门案例

概述 在看书的时候&#xff0c;用到了actix-web这个框架的案例。 书里面的版本是1.0&#xff0c;但是我看官网最新都4.4了。 为了抹平这种信息差&#xff0c;所以我决定把官方提供的示例代码过一遍。 核心代码 Cargo.toml [package] name "hello" version &q…

GPT-4o“成精了”:推测技术原理,附送“美国湾区”小道消息

原创&#xff1a;谭婧 如果你能跟上技术发展&#xff0c;那大多数技术提升都是按部就班&#xff0c; 偶而会有突破性进展。 如果你仅仅吃瓜&#xff0c;那OpenAI的所有新闻&#xff0c; 你都可以写成&#xff1a; “改写历史”“干翻所有”“颠覆世界”。 真的颠覆世界了吗&…

Hello, GPT-4o!

2024年5月13日&#xff0c;OpenAI 在官网正式发布了最新的旗舰模型 GPT-4o 它是一个 多模态模型&#xff0c;可以实时推理音频、视频和文本。 * 发布会完整版视频回顾&#xff1a;https://www.youtube.com/watch?vDQacCB9tDaw GPT-4o&#xff08;“o”代表“omni”&#xff0c…

【会议征稿】2024年机器人前沿技术与创新国际会议(FTIR 2024, 7/19-21)

2024年机器人前沿技术与创新国际会议&#xff08;FTIR 2024&#xff09;将于2024年7月19-21日在中国杭州举行。FTIR 2024聚焦前沿技术与创新&#xff0c;将把机器人领域的创新学者和专家聚集到一个共同的论坛。会议的主要目标是促进机器人的研究和开发活动&#xff0c;另一个目…

Qt三方库:QuaZIP介绍、编译和使用

前言 Qt使用一些压缩解压功能&#xff0c;探讨过libzip库&#xff0c;zlib库&#xff0c;libzip库比较原始&#xff0c;还有其他库&#xff0c;都比较基础&#xff0c;而在基础库之上&#xff0c;又有高级封装库&#xff0c;Qt中的QuaZIP是一个很好的选择。Quazip是一个用于压缩…

yolov9训练自定义数据

1.训练yolov9&#xff0c;先准备好一份自定义数据.。到roboflow下载一份数据&#xff0c;数据格式是yolo格式。 2.到github下载yolov9源码 https://github.com/WongKinYiu/yolov9 3.为了方便配置环境&#xff0c;把代码上传到矩池云上面&#xff0c;使用云服务器 4.执行 pip i…

【Bug】Clash出现端口0的情况

win版本的Docker桌面版用了Hyper-V的功能&#xff0c;虚拟机需要映射一部分端口&#xff0c;并且在系统更新后对动态映射的端口范围进行了更改&#xff0c;导致占用了本来的7890Clash使用的端口。 cmd去查看还能使用的端口 netsh interface ipv4 show excludedportrange prot…

ArcGI基本技巧-科研常用OLS, GWR, GTWR模型实现

ArcGI基本技巧-科研常用OLS, GWR, GTWR模型实现 OLS,GWR,GTWR回归模型均可以揭示解释变量对被解释变量的影响且可以进行预测。Ordinary Least Squares (OLS)是最小二乘法&#xff0c;Geographically Weighted Regression (GWR)是地理加权回归&#xff0c;Geographically and T…

openFeign 调用后 返回 出现 application/json 错误

项目场景&#xff1a; 远程调用时返回json格式错误 项目场景&#xff1a;从分页插件式改换为原生分页的时候 通过openFeign调用时发现了问题 问题描述 不需要openFeign 调用的时候 返回的数据和格式是对 通过openFeign 调用后返回 出现 application/json 错误 &#xff1a; …

代码随想录--链表--反转链表

题目 题意&#xff1a;反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 思路 如果再定义一个新的链表&#xff0c;实现链表元素的反转&#xff0c;其实这是对内存空间的浪费。 其实只需要改变链表的next指针的…

AI4Science

AI4Science 文章目录 AI4ScienceMicroSoft AI4Science其它 微软研究院刘铁岩&#xff1a;AI for Science&#xff0c;追求人类智能最光辉的一面&#xff5c;MEET2023 &#xff08;17min&#xff09; https://www.bilibili.com/video/BV1bs4y1W7rW/AI Forum 2023 | AI4Science: …

项目-坦克大战

增加功能 我方坦克在发射的子弹消亡后&#xff0c;才能发射新的子弹。同时实现发多颗子弹 1&#xff0c;在按下J键&#xff0c;我们判断当前hero对象的子弹&#xff0c;是否已经销毁2&#xff0c;如果没有销毁&#xff0c;就不去触发shotEnemyTank3&#xff0c;如果已经销毁&…