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 相关文章推荐
使用js获取QueryString的方法小结
Feb 28 Javascript
Javascript 中的 call 和 apply使用介绍
Feb 22 Javascript
jQuery探测位置的提示弹窗(toolTip box)详细解析
Nov 14 Javascript
JS实现至少包含字母、大小写数字、字符的密码等级的两种方法
Feb 03 Javascript
JavaScript使用pop方法移除数组最后一个元素用法实例
Apr 06 Javascript
深入了解JavaScript 的 WebAssembly
Jun 15 Javascript
微信小程序文字显示换行问题
Jul 28 Javascript
微信小程序使用Vant Weapp组件库的方法步骤
Aug 01 Javascript
详解Vscode中使用Eslint终极配置大全
Nov 08 Javascript
JS遍历树层级关系实现原理解析
Aug 31 Javascript
UEditor 自定义图片视频尺寸校验功能的实现代码
Oct 20 Javascript
javascript实现简单留言板案例
Feb 09 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 MVC模式在网站架构中的实现分析
2010/03/04 PHP
php的mssql数据库连接类实例
2014/11/28 PHP
PHP常用的小程序代码段
2015/11/14 PHP
PHP实现文件上传和多文件上传
2015/12/24 PHP
php+jQuery实现的三级导航栏下拉菜单显示效果
2017/08/10 PHP
WHOOPS PHP调试库的使用
2017/09/29 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
图片自动缩小的js代码,用以防止图片撑破页面
2007/03/12 Javascript
JavaScript 异步调用框架 (Part 4 - 链式调用)
2009/08/04 Javascript
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
JQuery中的事件及动画用法实例
2015/01/26 Javascript
详解Document.Cookie
2015/12/25 Javascript
详解JavaScript中this关键字的用法
2016/05/26 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
2016/07/01 Javascript
jquery.tableSort.js表格排序插件使用方法详解
2020/08/12 Javascript
Bootstrap表单简单实现代码
2017/03/06 Javascript
详解Node.js串行化流程控制
2017/05/04 Javascript
js仿微信抢红包功能
2020/09/25 Javascript
jQuery选择器选中最后一个元素,倒数第二个元素操作示例
2018/12/10 jQuery
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
使用js在layui中实现上传图片压缩
2019/06/18 Javascript
浅谈TypeScript 用 Webpack/ts-node 运行的配置记录
2019/10/11 Javascript
小程序实现图片预览裁剪插件
2019/11/22 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
JS对象属性的检测与获取操作实例分析
2020/03/17 Javascript
python实现代码行数统计示例分享
2014/02/10 Python
Python引用传值概念与用法实例小结
2017/10/07 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
Python3+PyCharm+Django+Django REST framework配置与简单开发教程
2021/02/16 Python
澳大利亚设计的优质鞋类和适合澳大利亚生活方式的服装:Rivers
2019/04/23 全球购物
创业计划书六个要素
2013/12/26 职场文书
《云房子》教学反思
2014/04/20 职场文书
2014年政风行风自查自纠报告
2014/10/21 职场文书
担保书范文
2019/07/09 职场文书
Java设计模式中的命令模式
2022/04/28 Java/Android