唯品秀前端博客
当前位置: 前端开发 > Node+Koa > 傻逼式的node+koa2+mongodb腾讯云服务器部署

傻逼式的node+koa2+mongodb腾讯云服务器部署

2019-08-01 分类:Node+Koa 作者:管理员 阅读(415)

前端搞后台,还要搞Linux生产环境代码部署,真是搞的一把眼屎一把泪,从来没学过Linux,折腾的从入门到入门就放弃,尴尬一逼,关于nginx端口转发可以浏览下一篇文章《傻逼式的linux centos安装并配置nginx1.7.4

一台纯净的Linux服务器

怎样算纯净的?就是标准的CentOS 7.5 64位这种,不是预装了一堆东西的,让我们一步步自己搭建,更清晰的了解整个步骤。

登录服务器

1
ssh root@49.235.23.180

你需要在linux环境去执行这句代码,windows命令窗口不会鸟你的,当然,mac好处来了,你懂的,windows我们通常用第三方工具,比如:Xshell 6

安装nodejs

1
2
3
yum install nodejs
node -v
npm -v

升级node.js

上面方式直接安装后版本可能比较旧

安装n这个工具

1
npm install -g n

如果安装失败请先更新openssl

1
yum update openssl

安装稳定版nodejs

使用下面命令即可

1
n stable

切换到新版本

使用node -v查看版本如果发现还是之前的老版本,使用下面命令使之立即生效

1
source /etc/profile

再次查看版本应该切换到新版本来了

安装git

1
yum install git

主要是让你方便拉取你代码库的代码,毕竟你也知道,在linux下传点东西似乎并不是很方便,那么git去拉代码库是个不错的选择,建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题。

1
npm install --registry=https://registry.npm.taobao.org

安装mongodb

下载

1
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.2.tgz

解压安装包

1
2
3
tar zxvf mongodb-linux-x86_64-rhel70-3.6.2.tgz  //解压
mv mongodb-linux-x86_64-rhel70-3.6.2 mongodb //改解压后的文件夹名称为mongodb
cd mongodb

新建数据和日志目录

1
2
mkdir db 新建文件夹
touch logs 新建文件

编写mongodb配置文件

1
2
cd bin
vi mongodb.conf //新建mongodb启动配置文件

拷贝以下内容

1
2
3
4
dbpath=/www/wwwroot/koa/service/mongodb/db //数据文件存放目录,你上面刚创建的绝对路径地址
logpath=/www/wwwroot/koa/service/mongodb/logs //日志文件存放目录,你上面刚创建的绝对路径地址
port=27017 //默认端口,不要轻易改
fork=true //以守护程序的方式启用,即在后台运行,如果启动数据库port报错,就设置成false

注意目录啊,让你复制只是参考格式,咱们的文件目录地址应该不同,这两个文件就是上面你创建的两个文件,当然,我这个是试验性的demo,其实mongodb不应该装在这么深目录下,一般是装在/usr/local/mongodb

这步修改文件夹内容可能就娃不会,我也不会,学嘛。打开终端,输入vi mongodb.conf回车,按a或i进入编辑模式,就可以去输入上面内容,然后按esc键退出编辑模式,接着输入:wq保存并退出,如果不想编辑进错了,可强制退出:shift+z+z

启动mongodb

1
./mongod -f mongodb.conf

到项目目录启动项目

1
2
3
node main.js

npm run dev

测试是否可访问

1
http://49.235.23.180:3000/

这段是废话,因为很明确告诉你,服务器默认是没开启3000端口的,所以不可能访问到,这时候我们要去开放端口3000,我项目是3000,自己根据项目监听的端口调整。

开放项目的3000端口

有的人可能会去购买的服务器后台上面可视化编辑处去改,当然,既然一股脑的命令行,那就用命令行搞吧

  • 关闭默认防火墙firewall
  • 1
    2
    3
    4
    5
    systemctl stop firewalld.service #停止
    firewall
    systemctl disable firewalld.service #禁止
    firewall开机启动
    firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)。
  • 安装iptables
  • 1
    yum install iptables-services
  • 增加端口配置
  • 1
    vim /etc/sysconfig/iptables //修改这个文件
  • 添加
  • 1
    -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT //修改好了:wq! #保存退出

    到此你应该可以在前台去访问ip地址了,如果不行,把服务器重启下,重新启动下数据库和项目代码。

    小结

    未知的东西都将让人有些畏惧,但你要想象下,既然很多人都会,那么说明这东西应该相对成熟,不会特别难,失败没关系,多百度下多尝试,有时候也是需要运气,运气好比如发现一个我这样傻逼式的帖子,傻逼式的教程,让傻逼的人不用动傻逼的脑子就能很简单的解决掉了问题,尴尬,我只是想说,多尝试,搞坏了没关系,学习嘛,大不了重装下系统再来,运气不好就是多花些时间有些让人崩溃烦躁。

    「两年博客,如果觉得我的文章对您有用,请帮助本站成长」

    赞(1) 打赏

    谢谢你请我吃鸡腿*^_^*

    支付宝
    微信
    1

    谢谢你请我吃鸡腿*^_^*

    支付宝
    微信

    上一篇:

    下一篇:

    你可能感兴趣

    共有 2 条评论 - 傻逼式的node+koa2+mongodb腾讯云服务器部署

    1. 奶爸建网站笔记 Mac OS X Chrome 75.0.3770.142

      越折腾越带劲

      1. 管理员 Mac OS X Chrome 75.0.3770.142

        @奶爸建网站笔记随便搞搞而已

    博客简介

    唯品秀博客: weipxiu.com,一个关注Web前端开发技术、关注用户体验、坚持更多原创实战教程的个人网站,愿景:成为宇宙中最具有代表性的前端博客,期待您的参与 

    精彩评论

    友情链接

    他们同样是一群网虫,却不是每天泡在网上游走在淘宝和网游之间、刷着本来就快要透支的信用卡。他们或许没有踏出国门一步,但同学却不局限在一国一校,而是遍及全球!申请交换友链

    站点统计

    • 文章总数: 231 篇
    • 草稿数目: 0 篇
    • 分类数目: 14 个
    • 独立页面: 6 个
    • 评论总数: 847 条
    • 链接总数: 12 个
    • 标签总数: 416 个
    • 建站时间: 980 天
    • 注册用户: 1856 人
    • 访问总量: 8652929 次
    • 最近更新: 2019年8月22日
    服务热线:
     173xxxx7240

     QQ在线交流

     旺旺在线