易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 4441|回复: 0
收起左侧

forever安装

[复制链接]
发表于 2017-6-20 16:02:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
我们不可能直接通过node命令来管理远程站点,这样无法保证网站的可持续运行。我们用Forever来解决这个问题,它可以将NodeJS应用以后台守护进程的方式运行,我们还可以将NodeJS应用设成随系统启动而自动运行。8 t0 M0 ^  Y9 @4 c" H& }; X
首先,安装Forever:1 F6 j: t" f: C6 {& d
复制代码 代码如下:
$ z5 ~0 h7 p3 E  D, v
& X  a: c- X% E% X5 Gnpm install forever -gd
3 c& ]  d; ~; E& _4 k
2 a2 ^; X- [2 a2 x; @' X这样Forever就安装好了,我们可以直接运行Forever命令:" C( O5 e  k' M/ _- j+ s, u
复制代码 代码如下:3 z# q6 k. @1 j5 |8 W5 z- w3 ^! k
  G0 {1 U8 y6 ^  n* C6 k- o
forever --help$ _/ y3 d" L0 Q! @# O; M/ q
forever start app.js  K  H$ s) G, N6 x4 u. ~0 ]
forever stop app.js
% E+ _% E) l8 b0 H, u" Q( A  k) l* H3 I) s" S6 c' K
上面命令先查看Forever帮助文件,然后运行app.js,然后停止app.js。我们要让Forever自动运行,先在/etc/init.d目录创建一个文件node,内容如下:
& o" [+ d" a; H! ?0 c6 j) m复制代码 代码如下:7 G# u( u  ]: G

2 o; m9 C/ M5 ^# X  T+ P#!/bin/bash8 S+ M' j; u, k8 f% J
#
- `9 x+ q' e# z* S# s4 E# node      Start up node server daemon
8 p5 Q- R% C- u# F9 u2 ^! Y, A#
! N& c2 S. a4 |) t# X# chkconfig: 345 85 15
- W6 {. ~7 r  c2 N; y/ j" g& g# description: Forever for Node.js8 h; A) Y! K6 n0 h
#
3 ~" L. u; U4 |8 N( g8 RPATH=/home/node/0.8.9/bin
9 g4 D+ i$ S2 ]% K  N) V) O* VDEAMON=/home/ftp/1520/weizt-20120918-tKx/weizt.com/app.js  x! e& A/ ~; W1 D/ ^# ^
LOG=/home/hosts_log
/ l$ s5 U3 |$ A5 U& `+ vPID=/tmp/forever.pid
6 S0 K) X0 ?6 m8 Gcase "$1" in- E! Z: l: F/ o) B% L
    start)8 F# W2 F) b# S; x" y: J
        forever start -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $DEAMON0 y3 p1 I; z8 K2 d' G0 k4 ~

( e3 u2 t, f: G$ A& R. a    stop)
3 @9 m4 `3 r2 }8 S5 c* k        forever stop --pidFile $PID $DEAMON
# j; a/ \6 D; q  L2 w# z
, E& l* I8 I! B    stopall)& i: M9 O! R& f$ f: I
        forever stopall --pidFile $PID  O  S/ w! e6 z8 r% R! G

/ h) z! A0 p* v9 r) x: [$ p0 @    restartall)# f: v3 V/ \; F( p
        forever restartall --pidFile $PID
: o* b3 e7 r) @/ ]6 W! a5 H) d  C( f
5 h6 o* Q$ h- f6 g2 P. J; X( P" c4 S    reload|restart)6 E! a4 H& ^5 ?
        forever restart -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $DEAMON
1 i# |1 Z: x$ p: v9 n& x* S& S9 M9 w& A
    list)
0 v. Q" J2 [$ P- a* J0 I        forever list
7 J# b& L; S  O. w* Q* v
3 z+ @+ L# h2 G' W* U4 f- H3 S; |    *)
8 s' x# R: t( u- f& R1 B2 c- H' w        echo "Usage: /etc.init.d/node {start|stop|restart|reload|stopall|restartall|list}"
7 F3 c5 V4 c( @        exit 1
. y3 |) a6 R0 b0 C! X1 q, n1 }  @' w# n/ h
esac
/ G5 V# ~  s" J1 \) t8 r  Y/ Zexit 0
) O  t2 D+ B( f  y3 z& _
3 Y; @1 Q7 z- Z* l0 W以上代码是我在本地虚拟机的配置,根据实际情况修改相关参数,主要是DEAMON的路径参数,赋予该文件可执行权限,并运行chkconfig添加自动运行:
, W5 \- w6 p: ^, G/ @- s9 Z) _# M4 X复制代码 代码如下:
: a: Q8 m0 u- k! J6 d, v( ?6 ]5 O* J  G9 H
chmod 755 /etc/init.d/node
4 p5 D, O  _3 o" p$ p7 J  k6 qchkconfig /etc/init.d/node on: Y% @; F. M3 L" e/ H% A+ M4 H: h

- n& C9 I" |" g4 S7 |( ?* Treboot重启系统,通过浏览器进入网站可发现,该NodeJS已经可自动运行了,剩下的工作,就是好好研究NodeJS、Express和AngularJS,做一个真正属于自己的应用
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 23:51 , Processed in 0.054806 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

快速回复 返回顶部 返回列表