ubuntu 下安装nodejs以及pm2
ubuntu 12.04服务器可以使用apt-get方式安装Node JS,但是,安装完后的版本为v0.6.12的版本,如果我们想要使用新一点的版本需要做如下配置:
|
1
2
3
4
|
apt-get install python-software-propertiesapt-add-repository ppa:chris-lea/node.jsapt-get updateapt-get install nodejs |
安装完成后可以检查一下版本,使用如下命令可以查看:
|
1
2
|
root@test:#node -vv0.10.28 |
接下来我们需要安装pm2这个软件
首先我们需要安装一个npm的软件,具体命令如下:
|
1
2
|
apt-get install npmnpm -v |
安装完成,我们就可以安装pm2这个软件,使用如下命令安装:
|
1
|
root@test:# npm install -g pm2 |
在shell中输入pm,使用table补全,如果能出现pm2,说明已经正常安装。
现在我们可以使用PM2命令来启动node
输入如下命令,启动我们的app.js
|
1
|
pm2 start app.js |
那我们如何让pm2在开机的时候自动运行我们的程序呢?或者说我们想要启动,停止或者重启的时候用什么命令呢?我们可以做如下操作:
|
1
|
sudo env PATH=$PATH:/usr/local/bin pm2 startup app.js -u safeuser #(你启动node的用户) |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
addam@AYZ:/web/webtest$ sudo env PATH=$PATH:/usr/local/bin pm2 startup app.jsPM2 Generating system init script in /etc/init.d/pm2-init.shPM2 Making script booting at startup...PM2 -ubuntu- Using the command chmod +x /etc/init.d/pm2-init.sh; update-rc.d pm2-init.sh defaults Adding system startup for /etc/init.d/pm2-init.sh ... /etc/rc0.d/K20pm2-init.sh -> ../init.d/pm2-init.sh /etc/rc1.d/K20pm2-init.sh -> ../init.d/pm2-init.sh /etc/rc6.d/K20pm2-init.sh -> ../init.d/pm2-init.sh /etc/rc2.d/S20pm2-init.sh -> ../init.d/pm2-init.sh /etc/rc3.d/S20pm2-init.sh -> ../init.d/pm2-init.sh /etc/rc4.d/S20pm2-init.sh -> ../init.d/pm2-init.sh /etc/rc5.d/S20pm2-init.sh -> ../init.d/pm2-init.shPM2 Done. |
这样我们就可以使用/etc/init.d/pm2-init.sh start|stop|restart 命令来启动关闭和重启我们的程序了,而且开机的时候也会自动启动,如果你使用kill来杀死这个进程,当你再次使用原来的pm2 start app.js 来启动的时候,会发现报错,无法找到套接字等问题。所以,使用这样平滑的方式启动停止,对我们的程序有很大的好处。
PM2的主要功能:
Main features
Built-in load balancer (using the native cluster module)
Script daemonization
0s downtime reload for Node apps
Generate SystemV/SystemD startup scripts (Ubuntu, Centos...)
Pause unstable process (avoid infinite loop)
Restart on file change with
--watchMonitoring in console
PM2地址:https://github.com/Unitech/pm2
参考文献:https://www.digitalocean.com/community/articles/how-to-use-pm2-to-setup-a-node-js-production-environment-on-an-ubuntu-vps
ubuntu 下安装nodejs以及pm2的更多相关文章
- ubuntu下安装nodejs
前言 继前几天在wins环境下使用cygwin模拟器安装nodejs出现了一些问题后,今天我决定在ubuntu下安装nodejs,安装过程非常顺利,没有报错,看来还是linux环境给力啊,由于刚接触l ...
- ubuntu下安装nodejs和npm
第一种安装方法: 安装nodejs : 1 sudo apt-get install nodejs 运行 nodejs -v 会弹出安装node的版本号 这里使用的是 nodejs 并不是常用的nod ...
- ubuntu下安装nodejs,无node情况
Updating nodejs solved the issue: npm cache clean -f npm install -g n n stable node --version node ...
- Linux(Ubuntu)下安装NodeJs
用以下命令来升级系统,并且安装一些Node.JS必要的包. Linux(Ubuntu)下安装NodeJs 安装nodeJS之前,如果没有安装g++ make libssl-dev等, 1.更新系统和依 ...
- Angularjs学习---angularjs环境搭建,ubuntu 12.04下安装nodejs、npm和karma
1.下载angularjs 进入其官网下载:https://angularjs.org/,建议下载最新版的:https://ajax.googleapis.com/ajax/libs/angular ...
- ubuntu下安装git,sublime,nodejs
用的是VMware10.0版本的虚拟机,很早之前下载的今天就直接用了,安装挺简单记得需要一个序列号.在这里:http://mirrors.163.com/ubuntu-releases/15.04/u ...
- Ubuntu 下安装 apt-get install npm 失败的解决方案
Ubuntu 下安装 apt-get install npm 失败的解决方案: sudo apt-get remove nodejs npm ## remove existing nodejs an ...
- Ubuntu下搭建NodeJS+Express WEB开发框架
Ubuntu下搭建NodeJS+Express WEB开发框架 2012-12-27 15:06 作者: NodeJSNet 来源: 本站 浏览: 2,966 次阅读 我要评论暂无评论 字号: 大 中 ...
- Linux之旅-ubuntu下搭建nodejs环境
.NET Core也开源了,并且可移植到Linux下,而ubuntu作为linux发行版的翘楚,极大的方便了初学者的入门,搭建完ASP.NET Core运行环境后,作为半前半后的开发人员,就继续着搭建 ...
随机推荐
- cd,PATH,alias,man,快捷键
5. cd命令cd 后面不加东西,就是进入到当前用户的家目录cd ~ 这里的~符号也表示用户的家目录cd - 切换到上一次所在的目录cd . .. 其中.表示当前目录, ..表示上一级目录注意区分绝对 ...
- PHP面向对象练习
练习内容:随机生成一个字符串 代码: <?phpclass randstring{ private $length; private $type; private $one = array(0, ...
- MPLAB® XC C编译器的Workstation License的获取及安装方法
MPLAB®XC C编译器的Workstation License获取及安装方法如下:首先需要购买获得一个XC C编译器的激活码,然后到以下网页(http://www.microchip.com/rl ...
- 圆盘自动机 cell
圆盘自动机 cell 一个n-m圆盘自动机,包含n个排列成一圈的方格,它们按1至n编号.每个方格中有一个整数,范围[0,m-1] .圆盘会进行d操作,每次d操作会使得每个方格中的数同时变换,变换为与其 ...
- 回文后缀(suffix)
回文后缀(suffix) 题目描述 给定字符集大小 SS ,问有多少个长度为 NN 的字符串不存在长度 >1>1 的回文后缀. 答案对 MM 取模. 输入格式 第一行两个正整数 n, kn ...
- 忽略node_modules目录
如上图所示添加node_modules目录到忽略文件列表里面,点击应用就可以了.
- ACdream 1025 bfs
Transform Time Limit: 4000/2000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) Submit St ...
- 在线cron生成器
什么是cron表达式: cron表达式主要是用在Quartz框架中,Quartz是一个完全由java编写的开源作业调度框架,最主要的功能就是调度器(完成定时任务),可以与javaEE或者javaSE应 ...
- ES6--javascript判断一个字符串是否存在另一个字符串中
es5中我们经常使用indexof()方法来判断一个字符串是否包含另外一个字符串中. 如果存在则返回匹配到的第一个索引值.如果没有则返回 -1.所以,判断一个字符串是否包含另外一个字符串中只需要判断是 ...
- redux-saga call 和 fork的区别
call 为阻塞调用, fork为非阻塞调用