Node+mongodb+nginx线上部署

作者: 喝不醉再来 | 来源:发表于2017-05-24 23:13 被阅读608次

一个偶然的机会发现阿里云居然9元服务器用6个月,点我
开启了我捣鼓服务器之旅。

刚刚好我自己博客也做好了,就抓住这个机会把博客部署到服务器上面去,作为只用过win的人来说linux简直太痛苦了,前前后后一共重新换了好几次系统盘。

建议大家还是用centos6吧,虽然我用的是Ubuntu.因为刚开始用centos7系统命令更新了很多,好了废话不多说,开启第一步服务器配置之旅把。。

登陆和分配管理员

第一步先去阿里云后台拿到IP


image.png

我们首先登陆了后先新建一个管理员,因为root权限太高了,很危险

\\ ubuntu
adduser xxx \\你的用户名
\\ 接下来会让你输入2次密码
image.png
这里选y就好了,然后把刚刚输入的用户名加入sudo$ gpasswd -a xxx sudo
然后输入 visudo image.png
找到root那一行下面输入 用户名 xxx ALL=(ALL:ALL) ALL

现在开始安装常用的软件

sudo apt-get install vim openssl build-essential libssl-dev wget curl git

下一步安装nvm方便我们管理node 版本 点我

要安装或更新nvm,可以使用
cURL 
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh
或Wget:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh

等待安装完成输入sudo nvm install v6.10.3我们目前安装的是6.10.3你可以去官方选择安装其他的版本。
安装pm2 这个可以帮我们监控我们的node程序,死掉可以自动帮我们重新启动
npm install -g pm2

安装nginx

sudo apt-get install nginx

现在我们开始配置nginx,

image.png

进入nginx目录cd /etc/nginx/conf.d
我们在这里新建一个文件 vi blog.conf
进入文件输入以下代码

upstream blog {
  server 127.0.0.1:8081; \\ 你node的端口
}

server {
  listen 80;
  server_name 47.93.0.0;  \\ 这里输入你需要访问这个node域名

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forward_For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Nginx-Proxy true;

    proxy_pass http://blog;
    proxy_redirect off;
  }
}

现在先让我们启动nginx service nginx start

安装mongodb

现在让我们进入最坑的环节,这个环节坑了我一天

1. 添加mongodb签名

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927

2. 创建/etc/apt/sources.list.d/mongodb-org-3.2.list文件并写入命令

ubuntu 14.04

$ echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodborg/3.2multiverse"|sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.listubuntu 

16.04

$ echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

3. 更新软件源列表

$ sudo apt-get update

4. 安装mongodb(默认是安装稳定版)

$ sudo apt-get install -y mongodb-org

或者安装指定版本:

$ sudo apt-get install -y mongodb-org=3.2.9 mongodb-org-server=3.2.9 mongodb-org-shell=3.2.9 mongodb-org-mongos=3.2.9 mongodb-org-tools=3.2.9

启动、停止、重启

sudo service mongod start
sudo service mongod stop
sudo service mongod restart

切记这里命令是改了,很多教程都不对了,启动不了

我们现在输入nerstat -lntp
查看默认的270717端口是否已经成功的启动
如果启动了那就恭喜你吧。

pm2 启动程序

我们先上传我们本地写好的node,先动手把依赖给安装了

1启动

pm2 start app.js

如果你看到以下界面证明已经启动成功

image.png

结尾

1.记得把app.js里面的端口改成和Nginx里面配置的一样的端口

2.关于mongodb配置我可能会单独拿一章出来说,太坑了!

相关文章

  • Node+mongodb+nginx线上部署

    一个偶然的机会发现阿里云居然9元服务器用6个月,点我开启了我捣鼓服务器之旅。 刚刚好我自己博客也做好了,就抓住这个...

  • 线上服务器部署(前后端)(27 个视频)

    线上服务器部署(前后端)(27 个视频) 线上服务器部署(前后端) #1 部署前的准备工作(主机,域名,虚拟机)[...

  • 线上部署

    1.发布前的准备工作 1.1必备条件(1) 一台Linux服务器(Centos/Ubuntu/Redhat/......

  • 线上部署

    修改nuxt的nuxt.config.js,新增如下配置 将项目clone到服务器上如下(nuxt_koa_mon...

  • 简单 Node 服务器部署

    近期折腾了一个基于 node 的小说爬虫,并把爬虫部署到线上服务器,进行定时爬取,本文主要讲述如何部署线上的 no...

  • 如何优雅关闭 Spring Boot 应用(Java 微服务)推

    随着线上应用逐步采用 SpringBoot 构建,SpringBoot应用实例越来多,当线上某个应用需要升级部署时...

  • 微信小程序部署到线上环境

    微信小程序部署到线上环境 微信小程序部署到线上环境 一.微信小程序申请 申请,并认证(未认证不能发布,认证需要30...

  • Django部署到线上

    前言 《Django开发简单Blog系统》系列中,我们已经完成了一个迷你Web项目。那么,怎么把这个项目发布到线上...

  • 腾讯云线上环境yum安装部署zabbix5.0

    腾讯云线上环境yum安装部署zabbix5.0 zabbix服务器配置 下载和部署zabbix监控 安装zabbi...

  • linux部署vue项目

    部署vue项目 有个坑,就是线下调试正常,线上请求接口404,主要解决此问题! 部署第1步 yarn build ...

网友评论

  • JackYao:nerstat -lntp
    这个命令是错的,,
    netstat -lntp 才是对的. 希望博主更改一下.
    喝不醉再来:@JackYao 多谢
  • 81c17c76d562:博主 根据你的nginx配置 一直连不上 但是取消调nginx就可以了 可以详细说一下这方面的吗
  • 81c17c76d562:博主可以再说说mongodb配置的坑
    喝不醉再来: @Mr_Wrong丶 好的,近期忙好了就整理

本文标题:Node+mongodb+nginx线上部署

本文链接:https://www.haomeiwen.com/subject/egtaxxtx.html