博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 下配置 node + mongodb 环境
阅读量:7122 次
发布时间:2019-06-28

本文共 2414 字,大约阅读时间需要 8 分钟。

1、下载node、解压、添加到全局变量

下载

wget https://nodejs.org/dist/v8.11.2/node-v8.11.2-x64.msi

解压

tar -jxv -f node-v8.11.2-x64

把node、和npm添加到全局变量

ln -s /app/node-v8.11.2-x64/bin/node /usr/local/bin/nodeln -s /app/node-v8.11.2-x64/bin/npm /usr/local/bin/npm

前面是安装目录,填写自已的安装路径

2、mongodb 的安装

mongodb 官网,找到对应linux系统的安装包。我的服务器系统是 centos7

  • 下载安装包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.0.tgz
  • 解压
tar -zxvf mongodb-linux-x86_64-rhel70-4.0.0.tgz
  • 改名(也可以不改),改名是为了文件名不要那么长
mv mongodb-linux-x86_64-rhel70-4.0.0 mongodb4.0.0
  • 创建mongodb文件夹,并把上面解压后生成的文件夹移到mongodb中去
  • 然后cd到 mongodb/mongodb4.0.0.0/bin 目录下
  • 创建两个目录 data/dbdata/logs 分别用于存放数据库数据和日志。
  • 然后在 bin 目录下创建一个启动配置文件 mongodb.conf,填入
# MongoDB start config -2018-06-28# 设置数据文件存放目录dbpath = /app/mongodb/mongodb4.0.0/bin/data/db# 设置日志文件存放目录,及日志文件名logpath = /app/mongodb/mongodb4.0.0/bin/data/logs/mongodb.log# 设置数据库访问端口号(默认为 27017)port = 27017# 设置为以守护进程的方式运行,即在后台运行fork = true

然后启动、停止mongodb、登录

cd 到 /app/mongodb/mongodb4.0.0/bin 目录下

通过配置文件方式启动

./mongod -f mongodb.conf

登录

mongo

停止

./mongod --shutdown --dbpath /app/mongodb/mongodb4.0.0/bin/data/db

db.shutdownServer();

3、mongoose 连接数据库

npm i -D mongoose
const mongoose = require('mongoose')let url = 'mongodb://127.0.0.1:27017/test' // test 库已存在则连接,不存在,则创建 test 并连接mongoose.connect(url)

4、配置 https

我用的是阿里云服务器,其它的应该也相似

首先去到域名管理,申请 ssl 证书。下载证书。node 用的证书跟Nginx是一样的。下载Nginx那个就好了。

证书下载解压后,有两个文件,一个是 .key后缀,一个是 .pem 后缀。

service.js 文件

const https = require('https')const http = require('http')const fs = require('fs')const express = require('express')const app = express()let port = 8088let httpServer = http.createServer(app)let certificate = {  key: fs.readFileSync('./certificate/1231231.key', 'utf8'),  cert: fs.readFileSync('./certificate/1231231.pem', 'utf8')}let httpsPort = 443let httpsServer = https.createServer(certificate, app)httpServer.listen(port, () => {  console.log(`node http server listening the port ${port}.....`)})httpsServer.listen(httpsPort, () => {  console.log(`node https server listening the port ${httpsPort}.....`)})

然后启动服务器就可以了,不过这样的启动方式,一旦关闭命令窗口就结束进程了。服务持久化请看一步。

node service.js

5、安装forever 守护进程,让node服务持久化

npm i -g forever

将forever添加到全局变量

ln -s /app/node-v8.11.2-x64/bin/forever /usr/local/bin/forever

管理服务相关

forever start server.js     //启动服务器forever list                //查看当前运行的所有服务forever stopall             //停止所有服务forever stop server.js      //停止指定文件forever restart server.js   //重启

转载地址:http://hlael.baihongyu.com/

你可能感兴趣的文章
JS去除右边的逗号
查看>>
LeetCode 213 House Robber II
查看>>
我的云之旅–HBase调试(139)
查看>>
Gulp的使用教程
查看>>
【转】协同开发中SVN使用规范试用
查看>>
mac 上配置sublime text3插件
查看>>
Linq to XML Descendants 和 Elements的区别
查看>>
windows系统下PHP环境高承压,高稳定解决方案
查看>>
一个32岁入门的70后程序员给我的启示
查看>>
jsp&Servlet(4)
查看>>
谷歌下,因为给外层大容器设置 overflow:visible; 而导致问题,IE、火狐正常
查看>>
【cocos2d-js官方文档】事件分发监听机制(摘录)
查看>>
Unity3d 札记-Survival Shooting 知识点汇总--受到伤害时屏幕闪血光如何做到
查看>>
dubbo初认知(dubbo和springCloud关系,在微服务架构中的作用等)(持续更新中)...
查看>>
【Autoprefixer】Hbuilder中配置Autoprefixer
查看>>
mysql-5.7 Using Asynchronous I/O on Linux详解
查看>>
【node.js】REPL(交互式解释器)
查看>>
python中实现多线程的几种方式
查看>>
3DSMAX安装未完成,某些产品无法安装的解决方法
查看>>
写给对MCU感兴趣的读者
查看>>