请关注专题:我的NodeJS学习之路(实践之路)
小弟初涉node领域,不足之处,还请多多指教!
欢迎Star、Fork:https://github.com/gefangshuai/ANodeBlog
程序开发完了,我们就可以部署到远程服务器了。如果没有服务器,推荐买一台云服务器,可以部署自己的项目或者干点别的。
关于服务器的购买,国内首推阿里云。不过阿里云的价格对于个人来说,贵!!所以我推荐买国外的DigitalOcean(nodejs社区主推)。这里介绍一下如何购买及使用DigitalOcean。
购买DigitalOcean需要有一个支持美元的信用卡或者PayPal账号。
首先注册一个DigitalOcean账号。
然后看一下DigitalOcean的价格:
Paste_Image.png Paste_Image.png为什么推荐DigitalOcean呢?因为DigitalOcean良心大大的!
支持按月或者按小时付费,如果你想玩一会,可以按小时付费,先体验以下,非常划算!
对于个人来说,我推荐$5/月足够了。
买完服务器之后,就可以创建一个镜像,搭建环境了。详细创建镜像教程请参考使用DigitalOcean + ShadowSocks 进行科学上网
镜像创建完成,就开始搭建nodejs环境、git环境和mongodb环境。至于linux下怎么搭建环境,网上教程一堆,这里就不再悖述了,有问题的童鞋可以给我留言,我会一一解决!
环境部署好并将自己的代码从github下拉下来后,在ssh客户端链接工具中输入:
npm start
但是你会发现,当我们关闭ssh连接工具后,程序就自动退出了!原因是当我们关闭ssh连接工具,npm进程就会被终结。所以我们需要让其在终端后台运行。
那么怎么在后台运行呢?简单的方法可以参考Linux下使Shell 命令脱离终端在后台运行
这里我介绍另外一个工具forever
教程请参考使用forever在ssh中管理node应用。
对于本例,运行命令如下:
forever start bin/www
结束运行
forever stop bin/www
我这里简单写了一个部署脚本,集停止服务
、拉代码
、运行服务
于一体,大家可以参考一下(deploy.sh):
#!/bin/sh
forever stop bin/www && git pull && npm install && forever start bin/www
exit 0
linux端将脚本授权
# chmod +x deploy.sh
然后每次只要本地将代码push
到github后,只需要在服务器上运行
./deploy.sh
即可!
现在貌似pm2更流行一些,回头研究一下,分享给大家!
请关注专题:我的NodeJS学习之路(实践之路)
网友评论