前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于CentOS6平台上PM2安装失败的解决方案

关于CentOS6平台上PM2安装失败的解决方案

作者头像
用户1456517
发布2019-04-09 15:39:09
3K0
发布2019-04-09 15:39:09
举报
文章被收录于专栏:芝麻实验室芝麻实验室

关于PM2 PM2 Runtime is a Production Process Manager for Node.js applications with a built-in Load Balancer. It allows you to keep applications alive forever, to reload them without downtime and facilitate common Devops tasks. 译文:PM2 Runtime是具有内置Load Balancer的Node.js应用程序的生产过程管理器。它允许您永久保持应用程序的活动,无需停机即可重新加载它们,并促进常见的Devops任务。 Works on Linux (stable) & macOS (stable) & Windows (stable). All Node.js versions are supported starting Node.js 4.X. 译文:适用于Linux(稳定)和macOS(稳定)和Windows(稳定)。从Node.js 4.X开始支持所有Node.js版本。

安装回顾

  • 安装
代码语言:javascript
复制
[root@test-comm-mkdata ~]# rpm -q nodejs npm
package nodejs is not installed
package npm is not installed
[root@test-comm-mkdata ~]# yum list nodejs npm
[root@test-comm-mkdata ~]# yum install nodejs npm -y
[root@test-comm-mkdata ~]# npm install -g pm2
  • 错误信息如下图所示
pm2-install-error
pm2-install-error
  • PM2项目官网中明确提到项目依赖要求,即node≥4,npm=3.4.0,详情请戳这里
  • 查看软件包版本
代码语言:javascript
复制
[root@test-comm-mkdata ~]# node -v
v0.10.48
[root@test-comm-mkdata ~]# npm -v
1.3.6

因此,安装PM2失败的原因在于未满足环境依赖,即Node.js和npm版本较低,不满足安装PM2的基本要求;而安装Nodejs时,将会自动安装npm,因为我们只需安装符合PM2要求的Nodejs版本即可解决问题。

获取Nodejs

获取Nodejs主要有以下三种方式。 附:项目官网

包管理器安装

基于 Linux 的 Debian 和 Ubuntu 发行版,Enterprise Linux/Fedora 和 Snap packages Node.js 官方二进制发行版 由 NodeSource 提供。

  • NodeJS 11.x
代码语言:javascript
复制
curl -sL https://rpm.nodesource.com/setup_11.x | bash -
  • NodeJS 10.x
代码语言:javascript
复制
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
  • NodeJS 8.x
代码语言:javascript
复制
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
  • NodeJS 6.x
代码语言:javascript
复制
curl -sL https://rpm.nodesource.com/setup_6.x | bash -

使用编译好的Linux 二进制文件

  • 卸载通过YUM安装的Nodejsnpm软件包
代码语言:javascript
复制
[root@test-comm-mkdata ~]# yum -y remove nodejs npm
  • 从项目官网获取软件包
代码语言:javascript
复制
[root@test-comm-mkdata ~]# cd /usr/local/
[root@test-comm-mkdata local]# wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz
--2019-03-23 11:10:57--  https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz
Resolving nodejs.org... 104.20.23.46, 104.20.22.46, 2606:4700:10::6814:172e, ...
Connecting to nodejs.org|104.20.23.46|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12309200 (12M) [application/x-xz]
Saving to: “node-v10.15.3-linux-x64.tar.xz”

100%[=============================================================>] 12,309,200  5.68M/s   in 2.1s    

2019-03-23 11:11:00 (5.68 MB/s) - “node-v10.15.3-linux-x64.tar.xz” saved [12309200/12309200]
  • 解压并安装
代码语言:javascript
复制
[root@test-comm-mkdata local]# rpm -q xz 
package xz is not installed
[root@test-comm-mkdata local]# yum -y install xz tree
[root@test-comm-mkdata local]# tar xf node-v10.15.3-linux-x64.tar.xz 
[root@test-comm-mkdata local]# ls 
bin  games    lib    libexec                  node-v10.15.3-linux-x64.tar.xz  share
etc  include  lib64  node-v10.15.3-linux-x64  sbin                            src
[root@test-comm-mkdata local]# mv node-v10.15.3-linux-x64 nodejs
[root@test-comm-mkdata local]# ls 
bin  games    lib    libexec  node-v10.15.3-linux-x64.tar.xz  share
etc  include  lib64  nodejs   sbin                            src
  • 创建软链接,保证执行文件能在全局环境中使用。
代码语言:javascript
复制
[root@test-comm-mkdata local]# cd nodejs/
[root@test-comm-mkdata nodejs]# ls 
bin  CHANGELOG.md  include  lib  LICENSE  README.md  share
[root@test-comm-mkdata nodejs]# tree bin/
bin/
├── node
├── npm -> ../lib/node_modules/npm/bin/npm-cli.js
└── npx -> ../lib/node_modules/npm/bin/npx-cli.js

0 directories, 3 files
[root@test-comm-mkdata nodejs]# node -v 
-bash: /usr/bin/node: No such file or directory
[root@test-comm-mkdata nodejs]# npm -v 
-bash: /usr/bin/npm: No such file or directory
[root@test-comm-mkdata nodejs]# ln -s /usr/local/nodejs/bin/node /usr/bin/node
[root@test-comm-mkdata nodejs]# ln -s /usr/local/nodejs/bin/npm /usr/bin/npm
[root@test-comm-mkdata nodejs]# node -v 
v10.15.3
[root@test-comm-mkdata nodejs]# npm -v 
6.4.1

编译安装

代码语言:javascript
复制
[root@test-comm-mkdata nodejs]# yum -y install make gcc gcc-c++ #或执行 yum groupinstall 'Development Tools'
[root@test-comm-mkdata nodejs]# cd /usr/local/
[root@test-comm-mkdata local]# wget https://nodejs.org/dist/v10.15.3/node-v10.15.3.tar.gz
[root@test-comm-mkdata local]# gunzip node-v10.15.3.tar.gz
[root@test-comm-mkdata local]# cd node-v10.15.3
[root@test-comm-mkdata node-v10.15.3]# ./configure --prefix=/usr/local/nodejs-Compile
[root@test-comm-mkdata node-v10.15.3]# make -j4 && make install

安装PM2

代码语言:javascript
复制
[root@test-comm-mkdata ~]# npm install -g cnpm
[root@test-comm-mkdata ~]# npm config set registry https://registry.npm.taobao.org
[root@test-comm-mkdata ~]# npm install -g pm2 #或 cnpm install -g pm2; 设定npm国内源和安装并使用cnpm二选一即可
[root@test-comm-mkdata ~]# pm2 -v
3.4.0

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019/03/23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装回顾
  • 获取Nodejs
    • 包管理器安装
      • 使用编译好的Linux 二进制文件
        • 编译安装
        • 安装PM2
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档