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

摘要:
首先,您需要有一个LINIX服务器。登录后,按照以下步骤执行命令。您可以查看系统版本和配置。查看Linux内核。使用uname-a命令查看系统位是64位x86_64代表64位系统,i686i386代表32位系统uname-acat/proc/version补充信息--查看当前系统版本1.cat/etc/redhat版本的详细信息(此方法仅适用于redhat系统的Linux)2.lsb_release

首先你要有一台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
');
}).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--测试
');
}).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)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇c语言数据类型长度Apollo服务搭建下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【nodejs】 文件系统(fs) 之读写文件

//写入文件 var data = "hello world"; fs.writeFile('c:\a.txt', data, 'ascii', function(err) { if(err) { console.log('写入文件失败'); } else{ console.log('保存成功, 赶紧去看看...

Linux学习之路--shell学习

shell基础知识 什么是Shell Shell是命令解释器(command interpreter),是Unix操作系统的用户接口,程序从用户接口得到输入信息,shell将用户程序及其输入翻译成操作系统内核(kernel)能够识别的指令,并且操作系统内核执行完将返回的输出通过shell再呈现给用户,下图所示用户、shell和操作系统的关系: Shell也...

基於tiny4412的Linux內核移植 --- 实例学习中断背后的知识(1)

作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台tiny4412 ADK Linux-4.9   概述前面几篇博文列举了在有设备树的时候,gpio中断的用法示例。下面我们尝试分析一下Linux内核是如何做到的,如果哪写的有问题,欢迎大家批评指正,谢谢。 还是以GPIO中断为例分析,对于tiny4412,gpi...

为github帐号添加SSH keys(Linux和Windows)

【gitee里面又非常详细的官方教程】 文章转自:https://blog.cofface.com/archives/406.html/2 一、Linux增加ssh keys方法: 使用git clone命令从github上同步github上的代码库时,如果使用SSH链接(如我自己的cofface_recovery项目:git@github.com:cof...

Linux下安装mysql和curl扩展

在安装好apache2+php5之后,现在又想装上个mysql5玩玩。 用源码安装好mysql5之后,发现原来在Linux想为php添加新扩展,不像在windows上面,去掉分号注释就行了的~ 在网上查询了很多资料,终于搞定,特写日记以示祝贺。 添加扩展的基本步骤: 1、进入php源代码目录:# cd /usr/ChenShao/php-5.3.1/...

安装node环境,并且安装cnpm 淘宝镜像

说起来安装node,那已经不是一次两次了,可惜的是···· 这么多次还是记不住具体的方法,每次都要度一下十分繁琐。 所以记录一下,以便后期使用! 一、node在window安装 1、首先我估摸着自己都是window开发的,就只记录window系统下的方式吧! 2、找到window安装包: 32位的:https://nodejs.org/dist/v4.4....