pm2 部署 node的三种方法示例


Posted in Javascript onOctober 20, 2017

Node安装以及部署

去官网下载最新版本,分两种一种是源码,一种是编译后的文件。下面是官网下载地址: https://nodejs.org/en/download/current/  分不同的版本 win linux mac 下载对应版本

 以linux Windows为例

Linux 下安装:(方法一)

 1.1把下载的tar.gz压缩包文件解压

 1.2解压命令: tar -zxvf (压缩包的名字.tar.gz) 

1.3解压完成后就可以在bin文件中看见 node 和 npm 文件 在当前目录下执行./node可以执行node客户端

 1.4设置客户端:两条命令 node 和 npm 
(kun/mysofltware/node-v0.10.28-linux-x64/bin/node)node文件存放位置根据自己存放位置而定

ln -s /home/kun/mysofltware/node-v0.10.28-linux-x64/bin/node /usr/local/bin/node
ln -s /home/kun/mysofltware/node-v0.10.28-linux-x64/bin/npm /usr/local/bin/npm

1.5在node目录下执行pwd 获取node所在的目录,要把这个目录添加到PATH环境变量

1.6执行su 输入密码切换到root用户 执行命令:vi /etc/profile

1.7在vi 环境下 点击 i 进入插入状态,在export PATH的上一行添加如下内容 (环境变量中的内容 是以冒号分割的)

PATH=$PATH:/home/kun/mysofltware/node-v0.10.26-linux-x64/bin

编辑完成后按Esc键 然后输入 :wq 按回车保存退出。

1.8退出vi ,执行 source /etc/profile 可以让变量生效

1.9然后执行 echo $PATH ,看看输出内容是否包含自己添加的内容

 Linux 下安装:(方法二)

2.1把下载的source code源码解压

2.2  以此执行以下命令

cd node-v0.10
./configure
Make
Make install
cp /usr/local/bin/node /usr/sbin/

Linux 下安装:(方法三)【不推荐】

apt-get 方式

Sudo apt-get install node.js
Sudo apt-get install npm

Windows 下安装比较简单下载下一步(不赘述)

安装redis数据库

3.1 下载源码,解压缩后编译源码。

wget http://download.redis.io/releases/redis-2.8.3.tar.gz
tar xzf redis-2.8.3.tar.gz
cd redis-2.8.3
make

3.2编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、    redis-cli和redis.conf。然后拷贝到一个目录下。

mkdir /usr/redis
cp redis-server /usr/redis
cp redis-benchmark /usr/redis
cp redis-cli /usr/redis
cp redis.conf /usr/redis
cd /usr/redis

3.3启动Redis服务

redis-server  redis.conf

3.4然后用客户端测试一下是否启动成功。

redis-cli
redis> set foo bar
OK
redis> get foo"bar"

代码上传

4.1打包:命令 (node_modules  .idea  .git ne.tar.gz 这些文件不打包减小压缩包大小)

$ tar cvzf ne.tar.gz ./ --exclude=node_modules --exclude=.idea --exclude=.git --exclude=ne.tar.gz

4.2上传:命令

$ scp ./ne.tar.gz  主机名@IP地址:文件夹的路径

4.3 执行命令登录远程主机  ssh 主机名@IP地址  然后会提示输入密码

4.4 cd  ls   进入上传压缩包所在的目录 执行 tar -zxvf ne.tar.gz 解压文件

4.5 npm 安装环境依赖  执行命令 npm install

部署前查询DNS 端口 root 权限下

5.1  命令:$ netstart -ntupl

关闭防火墙root权限下

6.1  firewall-cmd --zone=public --add-port=9010/tcp --permanent

6.2  firewall-cmd --reload

注:9010处为项目需要开启的端口号

安装pm2

7.1 su 获得 root 权限下下载pm2

命令: $ npm install pm2 -g

$ pm2 start www 启动进程

8.2 安装开机自启动 在root 权限下 执行如下命令

$ pm2 startup
$ pm2 save

9.3 一些常用pm2 命令

$ pm2 list 查看启动状况
$ pm2 restart 重启项目
$ pm2 stop  关闭

其他命令 可参考  https://www.npmjs.com/package/pm2

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery 学习笔记01 JQuery初接触
May 06 Javascript
javasctipt如何显示几分钟前、几天前等
Apr 30 Javascript
JS设置下拉列表框当前所选值的方法
Dec 22 Javascript
jQuery Select下拉框操作小结(推荐)
Jul 22 Javascript
两种JavaScript的AES加密方式(可与Java相互加解密)
Aug 02 Javascript
基于原生js淡入淡出函数封装(兼容IE)
Oct 20 Javascript
Javascript中常用类型的格式化方法小结
Dec 26 Javascript
微信小程序 向左滑动删除功能的实现
Mar 10 Javascript
jQuery实现按比例缩放图片的方法
Apr 29 jQuery
详解react服务端渲染(同构)的方法
Sep 21 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
Sep 09 Javascript
详解JSON.parse和JSON.stringify用法
Feb 18 Javascript
vue.js实例对象+组件树的详细介绍
Oct 20 #Javascript
dropload.js插件下拉刷新和上拉加载使用详解
Oct 20 #Javascript
JavaScript html5 canvas实现图片上画超链接
Oct 20 #Javascript
Validform验证时可以为空否则按照指定格式验证
Oct 20 #Javascript
jquery select插件异步实时搜索实例代码
Oct 20 #jQuery
移动端效果之IndexList详解
Oct 20 #Javascript
详解webpack性能优化——DLL
Oct 20 #Javascript
You might like
php中$this->含义分析
2009/11/29 PHP
Smarty分页实现方法完整实例
2016/05/11 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
HTML中不支持静态Expando的元素的问题
2007/03/08 Javascript
javascript JSON操作入门实例
2010/04/16 Javascript
jquery 使用点滴函数代码
2011/05/20 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
idTabs基于JQuery的根据URL参数选择Tab插件
2012/04/11 Javascript
动态加载js和css(外部文件)
2013/04/17 Javascript
利用jquery操作Radio方法小结
2014/10/20 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
jQuery通过写入cookie实现更换网页背景的方法
2016/04/15 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
angular中的http拦截器Interceptors的实现
2017/02/21 Javascript
使用nodeJs来安装less及编译less文件为css文件的方法
2017/11/20 NodeJs
详解如何实现一个简单的Node.js脚手架
2017/12/04 Javascript
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
2020/01/04 Javascript
微信小程序8种数据通信的方式小结
2020/02/03 Javascript
Python利用ElementTree模块处理XML的方法详解
2017/08/31 Python
Django打印出在数据库中执行的语句问题
2019/07/25 Python
Python使用tkinter实现摇骰子小游戏功能的代码
2020/07/02 Python
详解KMP算法以及python如何实现
2020/09/18 Python
Web前端页面跳转并取到值
2017/04/24 HTML / CSS
世界上最受欢迎的钓鱼诱饵:Rapala
2019/05/02 全球购物
大专计算机个人求职的自我评价
2013/10/21 职场文书
餐厅采购员岗位职责
2014/03/06 职场文书
单位委托书怎么写
2014/09/21 职场文书
学习型家庭事迹材料
2014/12/20 职场文书
2015年保险公司工作总结
2015/04/24 职场文书
常住证明范本
2015/06/23 职场文书
教师节感想
2015/08/11 职场文书
消防安全培训工作总结
2015/10/23 职场文书
2016师德师风学习心得体会
2016/01/12 职场文书
导游词之云南丽江古城
2019/09/17 职场文书
go开发alertmanger实现钉钉报警
2021/07/16 Golang