操作场景
本文档介绍如何在腾讯云云服务器(CVM)上手动部署 Node.js 环境,并创建示例项目。
进行手动搭建 Node.js 环境,您需要熟悉 Linux 命令,例如 CentOS 环境下通过 YUM 安装软件 等常用命令,并对所安装软件使用、配置和兼容性比较了解。
说明
腾讯云建议您可以通过云市场的镜像环境部署 Node.js 环境,手动搭建 Node.js 环境可能需要较长的时间。具体步骤可参考 镜像部署 Node.js 环境。
示例软件版本
本文搭建 Node.js 环境使用软件版本及组成说明如下:
- 操作系统:Linux 系统,本文以 CentOS 7.6 为例。
- Node.js:JavaScript 的运行环境,本文以 Node.js 10.16.3 及 Node.js 6.9.5 为例。
- npm:Node.js 节点版本管理器,管理多个 Node.js 版本,本文以 npm 6.9.0 为例。
前提条件
已购买 Linux 云服务器。如果您还未购买云服务器,请参考 快速配置 Linux 云服务器。
操作步骤
步骤1:登录 Linux 实例
使用标准方式登录 Linux 实例(推荐)。您也可以根据实际操作习惯,选择其他不同的登录方式:
步骤2:安装 Node.js
- 执行以下命令,下载 Node.js Linux 64位二进制安装包。
wget https:///dist/v10.16.3/node-v10.16.3-linux-x64.tar.xz
- 执行以下命令,解压安装包。
tar xvf node-v10.16.3-linux-x64.tar.xz
- 依次执行以下命令,创建软链接。
ln -s /root/node-v10.16.3-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v10.16.3-linux-x64/bin/npm /usr/local/bin/npm
成功创建软链接后,即可在云服务器任意目录下使用 node 及 npm 命令。
- 依次执行以下命令,查看 Node.js 及 npm 版本信息。
步骤3:安装 Node.js 多版本(可选)
说明
此步骤通过 npm 安装多个版本的 Node.js,并可快速进行切换。适用于开发人员,您可根据实际需求进行安装。
- 执行以下命令,安装 git。
- 执行以下命令,下载 NVM 源码并检查最新版本。
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
- 执行以下命令,配置 NVM 环境变量。
echo ". ~/.nvm/nvm.sh" >> /etc/profile
- 执行以下命令,读取环境变量。
- 执行以下命令,查看 Node.js 所有版本。
- 依次执行以下命令,安装多个版本的 Node.js。
- 执行以下命令,查看已安装的 Node.js 版本。
返回结果如下所示,则表示安装成功,当前使用版本为 Node.js 10.16.3。

- 执行以下命令,切换 Node.js 使用版本。
返回结果如下图所示:

步骤4:创建 Node.js 项目
- 依次执行以下命令,在根目录创建项目文件
index.js
。
- 按 i 切换至编辑模式,并将以下内容输入
index.js
文件中。
const http = require('http');
const hostname = '0.0.0.0';
const port = 7500;
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}/`);
});
说明
本文在 index.js
项目文件中使用端口号为7500,您可根据实际需求自行修改。
- 按 Esc,输入 :wq 并按 Enter,保存文件并返回。
- 执行以下命令,运行 Node.js 项目。
- 在本地浏览器中访问以下地址,查看项目是否正常运行。
http://云服务器实例的公网 IP:已配置的端口号
显示结果如下,则说明 Node.js 环境搭建成功。

常见问题
如果您在使用云服务器的过程中遇到问题,可参考以下文档并结合实际情况分析并解决问题: