前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的NodeJS学习之路10(线上部署)

我的NodeJS学习之路10(线上部署)

作者头像
飞奔去旅行
发布2019-06-13 14:16:31
1.9K0
发布2019-06-13 14:16:31
举报
文章被收录于专栏:智慧协同智慧协同

小弟初涉node领域,不足之处,还请多多指教! 欢迎Star、Fork:https://github.com/gefangshuai/ANodeBlog

程序开发完了,我们就可以部署到远程服务器了。如果没有服务器,推荐买一台云服务器,可以部署自己的项目或者干点别的。

我推荐买国外的DigitalOcean(nodejs社区主推)。这里介绍一下如何购买及使用DigitalOcean

购买DigitalOcean需要有一个支持美元的信用卡或者PayPal账号。

首先注册一个DigitalOcean账号。

然后看一下DigitalOcean的价格:

为什么推荐DigitalOcean呢?因为DigitalOcean良心大大的! 支持按月或者按小时付费,如果你想玩一会,可以按小时付费,先体验以下,非常划算!

Paste_Image.png

Paste_Image.png

对于个人来说,我推荐$5/月足够了。

买完服务器之后,就可以创建一个镜像,搭建环境了。

镜像创建完成,就开始搭建nodejs环境、git环境和mongodb环境。至于linux下怎么搭建环境,网上教程一堆,这里就不再悖述了,有问题的童鞋可以给我留言,我会一一解决!

环境部署好并将自己的代码从github下拉下来后,在ssh客户端链接工具中输入:

代码语言:javascript
复制
npm start

但是你会发现,当我们关闭ssh连接工具后,程序就自动退出了!原因是当我们关闭ssh连接工具,npm进程就会被终结。所以我们需要让其在终端后台运行。

那么怎么在后台运行呢?简单的方法可以参考Linux下使Shell 命令脱离终端在后台运行

这里我介绍另外一个工具forever

教程请参考使用forever在ssh中管理node应用

对于本例,运行命令如下:

代码语言:javascript
复制
forever start bin/www

结束运行

代码语言:javascript
复制
forever stop bin/www

我这里简单写了一个部署脚本,集停止服务拉代码运行服务于一体,大家可以参考一下(deploy.sh):

代码语言:javascript
复制
#!/bin/sh
forever stop bin/www && git pull && npm install && forever start bin/www
exit 0

linux端将脚本授权

代码语言:javascript
复制
# chmod +x deploy.sh

然后每次只要本地将代码push到github后,只需要在服务器上运行

代码语言:javascript
复制
./deploy.sh

即可!

现在貌似pm2更流行一些,回头研究一下,分享给大家!

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档