首先你要有一台LINIX服务器,登入以后按下面步骤执行命令,可查看系统版本以及配置

查看Linux 内核

  • 通过 uname -a 命令查看系统位数是64位
  • x86_64表示64位系统, i686 i386表示32位系统
uname -a
cat /proc/version

补充信息 -- 查看当前系统版本的详细信息

1.cat /etc/redhat-release(此方法只适合Redhat 系的Linux)
2.lsb_release -a (此命令适用于所有的Linux 发行版本)

安装nodejs

  • 去官网按照自己系统配置下载nodejs包(直达链接

然后安装到这个目录

cd /home/appmanager/nodejs/

如果你想要更简单的办法安装,可以使用命令操作,例如,使用linux命令下载文件

wget -c https://npm.taobao.org/mirrors/node/v16.9.1/node-v16.9.1-linux-x64.tar.xz



解压上传,改名(很抱歉,这里搞得嵌套了两个nodejs名字哈哈)

tar -xvf node-v16.9.1-linux-x64.tar.xz

mv node-v16.9.1-linux-x64  nodejs



  • 开始改名



  • 改好啦~~~
  • 确认一下nodejs下bin目录是否有node 和npm文件,如果有继续往下操作,如果没有继续重复上面操作

建立软连接,变为全局,检验nodejs是否已变为全局

  • 如果不是root用户需要加(sudo)
ln -s /home/appmanager/nodejs/nodejs/bin/npm /usr/local/bin/
ln -s /home/appmanager/nodejs/nodejs/bin/node /usr/local/bin/
node -v

创建一个app.js文件,随便写一个简单的nodejs,测试环境

var http = require('http');

http.createServer(function (request, response) {

    response.writeHead(200, { 'Content-Type': 'text/plain' });

    response.end('Hello World\n');
}).listen(8090); console.log('Server running at http://127.0.0.1:8090/');

解下来,我们要配置一下服务器的安全组策略

然后,打开网页测试一下

基本功能已经大功告成~~~

  • 备注:关于连接服务器,nodeJS的server.js文件里面 ,app.listen配置的ip地址不是服务器地址 , 而是私有地址 ,我这个没有配哦,直接就OK了

pm2守护nodejs项目运行进程

  • 在这里 /home/appmanager/nodejs/nodejs 安装pm2,建立软连接
npm install pm2 -g
ln -s /home/appmanager/nodejs/nodejs/bin/pm2 /usr/local/bin/



杀掉刚刚那个启动,重新使用PM2启动并输出日志:

pm2 start app.js -e err.log -o out.log



修改代码后,pm2重启服务

  • 将app.js修改一下,添加解决中文乱码问题的代码
var http = require('http');

http.createServer(function (request, response) {

    response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});//只需要设置响应头的编码格式就好,解决中文乱码问题的代码
// response.writeHead(200, { 'Content-Type': 'text/plain' }); // 原有代码 response.end('Hello World--测试\n');
}).listen(8090); console.log('Server running at http://127.0.0.1:8090/');
  • 执行pm2重启命令
pm2 restart app



另外说一下:如果你需要不断修改代码,有热更新功能的话,建议使用supervisor,supervisor的功能是自动重启的话,pm2是永生

补充一些其他的PM2常用命令

  • pm2 查看启动了哪些进程
pm2 list
  • 关闭id 为pm2 list 显示的对应的pm2进程的id
pm2 stop #id
  • 重启pm2进程
pm2 restart #id
  • 关闭所有
pm2 stop all
  • 启动所有
pm2 start all
  • 删除pm2进程
pm2 delete #id
  • 删除所有pm2进程
pm2 delete all
  • pm2 可以启动任何类型的进程
pm2 start app.js        //启动js文件
pm2 start echo.php //启动php文件
pm2 start echo.py //启动py文件
pm2 start echo.sh //启动sh文件
pm2 start echo.rb //启动ruby文件
pm2 start app.json //启动json文件
pm2 start ./binary-app //启动二进制代码

图文并茂基于阿里云linux服务器部署nodejs项目并添加pm2守护nodejs项目运行进程(Linux version 4.19.81-17.1.al7.x86_64)的更多相关文章

  1. thinkphp项目阿里云ECS服务器部署

    [日记]thinkphp项目阿里云ECS服务器部署   项目本地开发告一段落.准备上传到服务器上测试 技术组成 thinkphp+mysql+阿里ECS  代码管理方式git 一.阿里ECS服务器配置 ...

  2. 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建

    准备: 两台配置CentOS 7.3的阿里云ECS服务器: hadoop-2.7.3.tar.gz安装包: jdk-8u77-linux-x64.tar.gz安装包: hostname及IP的配置: ...

  3. 阿里云ECS服务器部署HADOOP集群(五):Pig 安装

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 1 环境介绍 一台阿里云ECS服务器:master 操作系统:CentOS 7.3 Hadoop ...

  4. 阿里云ECS服务器部署HADOOP集群(四):Hive本地模式的安装

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 本地模式需要采用MySQL数据库存储数据. 1 环境介绍 一台阿里云ECS服务器:master ...

  5. 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  6. 阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  7. 阿里云ECS服务器部署HADOOP集群(六):Flume 安装

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 1 环境介绍 一台阿里云ECS服务器:master 操作系统:CentOS 7.3 Hadoop ...

  8. 阿里云ECS服务器部署HADOOP集群(七):Sqoop 安装

    本篇将在 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper) 阿 ...

  9. 阿里云ECS服务器部署Node.js项目全过程详解

    本文详细介绍如何部署NodeJS项目到阿里云ECS上,以及本人在部署过程中所遇到的问题.坑点和解决办法,可以说是全网最全最详细的教程了.同时讲解了如何申请阿里云免费SSL证书,以及一台ECS服务器配置 ...

  10. 【日记】thinkphp项目阿里云ECS服务器部署

    项目本地开发告一段落.准备上传到服务器上测试 技术组成 thinkphp+mysql+阿里ECS  代码管理方式git 一.阿里ECS服务器配置 1.因为线上已经有几个站点了.所以要配置ngnix多站 ...

随机推荐

  1. 如何用webgl(three.js)搭建一个3D库房,3D仓库,3D码头,3D集装箱可视化孪生系统——第十五课

    序 又是快两个月没写随笔了,长时间不总结项目,不锻炼文笔,一开篇,多少都会有些生疏,不知道如何开篇,如何写下去.有点江郎才尽,黔驴技穷的感觉. 写随笔,通常三步走,第一步,搭建框架,先把你要写的内容框 ...

  2. django 生产环境部署手册

    Django 是 python 的 web 框架,以下是其部署到生产环境的详细步骤,包含 Apache 和 nginx 版本. 部署环境 操作系统:centeros7.3 数据库:MySQL5.6.5 ...

  3. Programiranje 方法记录

    [COCI2017-2018#3] Programiranje 题面翻译 题目描述 Little Leticija正在准备编程考试.虽然她已经解决了很多任务,但还有一个任务尚未解决,所以她正在向你寻求 ...

  4. Installing ClickHouse-22.10.2.11 on openEuler

    一.Installing ClickHouse-22.10.2.11 on openEuler 1 地址 https://clickhouse.com https://packages.clickho ...

  5. Xtrabackup使用帮助

    目录 1.安装工具 2.下载后上传到需要备份的服务器 全备 1.安装完成后我们进行数据库备份执行以下命令 2.查看备份的数据 3.进入数据库,删除一个测试库 4.删除school库 5.备份数据目录 ...

  6. 谈软件-专家谈C/C++重构的操作与思路

    1.Refactoring: 对软件内部结构的一种调整,目的是不该被软件的可观察行为的前提上,提高其可理解性,降低其修改成本. 2.代码坏味道 2.1.不易复用 2.2.不易理解 2.3.存在冗余 3 ...

  7. 第2-4-2章 规则引擎Drools入门案例-业务规则管理系统-组件化-中台

    目录 3. Drools入门案例 3.1 业务场景说明 3.2 开发实现 3.3 小结 3.3.1 规则引擎构成 3.3.2 相关概念说明 3.3.3 规则引擎执行过程 3.3.4 KIE介绍 3. ...

  8. JavaScript入门④-万物皆对象:Object

    01.Object对象 Object 是 JavaScript 的一种 数据类型,它用于存储各种键值集合和更复杂的实体,是一组数据和功能的集合.JS中几乎所有对象都是继承自Object,Array.R ...

  9. 【大数据面试】【框架】Hadoop-入门、HDFS

    一.入门 1.常用端口号 2.x 50070:查看HDFS Web-UI 8088:查看MapReduce运行情况 19888:历史服务器 9000:hdfs客户端访问集群 50090:Seconda ...

  10. 基于pyecharts的中医药知识图谱可视化

    基于pyecharts的中医药知识图谱可视化 关键词: pyecharts:可视化:中医药知识图谱 摘要: 数据可视化是一种直观展示数据结果和变化情况的方法,可视化有助于知识发现与应用.Neo4j数据 ...