linux+node.js+redis+mongodb+nginx环境的搭建

时间:2021-07-23 08:34:14

1、推荐购买阿里云服务器,使用Centos7.0的服务器版本,在创建完全系统并进入之后,第一步是更新服务器的相关组件
    yum -y install gcc gcc-c++ openssl-devel zlib-devel openssl-devel pcre-devel bzip2* make
2、之后在根目录创建一个文件夹soft,用来保存各种软件安装包
    mkdir /soft /website
3、然后进入soft文件夹下
cd /soft
开始下载相关安装包
    下载node.js
  wget https://nodejs.org/dist/v4.3.2/node-v4.3.2.tar.gz
    下载nginx
wget http://nginx.org/download/nginx-1.10.1.tar.gz
   下载redis
wget http://download.redis.io/releases/redis-3.2.3.tar.gz
    下载mongodb
  wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.10.tgz
    下载图形处理库GraphicsMagick
  wget http://jaist.dl.sourceforge.net/project/graphicsmagick/graphicsmagick/1.3.20/GraphicsMagick-1.3.20.tar.gz
4、开始安装相关安装包与配置,在/soft所在的目录中,执行一系列命令,如果执行完后要安装其它的安装包,一定要回到/soft
    A.安装node.js,编译时间比较长,请耐心等
    tar zxvf node-v4.3.2.tar.gz && cd node-v4.3.2 && ./configure && make && make install

B.安装nginx  
tar -zxvf nginx-1.10.1.tar.gz && cd nginx-1.10.1 && ./configure  --with-http_ssl_module && make && make install
  C.安装成功后可以开始配置,nginx基本的配置方式是
  vim /usr/local/nginx/conf/nginx.conf            配置
  这里要对配置文档写入一个服务配置,先在键盘上按下  i  键进入文档编辑状态。然后在空白地方复制进
#================
server{
listen 80;
server_name www.XXXXXX.cn;
#server_name localhost;
charset utf-8;
location ~* ^.+.(html|htm)$ {
proxy_pass http://127.0.0.1:50001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^.+.(js|css|ico|gif|bmp|jpg|jpeg|png|swf|apk|xls|xlsx|woff|ttf|eot|otf|svg)$ {
root /website/hwj_wx/web;
access_log off;
expires 8h;
}
location /{
proxy_pass http://127.0.0.1:50001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
#================
然后按一下ESC键,再按入 :wq 然后回车保存当前所设置的文档,然后就可以启动了
/usr/local/nginx/sbin/nginx 启动
/usr/local/nginx/sbin/nginx -s reload 重启
/usr/local/nginx/sbin/nginx -s stop 停止
D.安装redis
tar -zxvf redis-3.2.3.tar.gz && cd redis-3.2.3 && make PREFIX=/usr/local/redis/ install && make install
开始配置
cd /usr/local/redis
mkdir etc logs var db
在/usr/local/redis位置打命令 cp /soft/redis-3.2.3/redis.conf etc
在 redis.conf 文件中找到 “# bind 127.0.0.1” ,把前面的#号去掉,然后保存。注:修改后只有本机才能访问Redis。
nohup /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf & 启动服务

E.安装mongodb
tar -zxvf mongodb-linux-x86_64-3.2.10.tgz && mv mongodb-linux-x86_64-3.2.10 /usr/local/mongodb
注意需要搭建 /data/db 目录
开始配置,先以无验证方式启动mongodb
/usr/local/mongodb/bin/mongod --dbpath=/data/db --fork --logpath=/data/db/mongodb.log --storageEngine wiredTiger --journal
然后进入shell
cd /usr/local/mongodb/bin
./mongo 启动shell
use admin 进入admin数据库,准备给空数据库设置管理权限与角色
db.createRole({role:'sysadmin',roles:[],privileges:[{resource:{anyResource:true},actions:['anyAction']}]}) 设置角色
db.createUser({user:admin,pwd:admin,roles:[{role:'sysadmin',db:'admin'}]}) 为admin数据库设置一个超级管理员账号与密码
db.shutdownServer(); 关停整个mongodb服务,退出准备以需要验证方式启动mongodb

之后在根目录创建一个文件夹data
mkdir /data
居然data 创建 文件夹db
cd /data
mkdir db
/usr/local/mongodb/bin/mongod --auth --dbpath=/data/db --fork --logpath=/data/db/mongodb.log --storageEngine wiredTiger --journal
再一次进入shell
cd /usr/local/mongodb/bin
./mongo 启动shell
use admin 进入admin数据库
db.auth("admin","admin") 登陆管理数据库,相当于登陆了超级管理员,这样可以创建其它的数据库与账号密码
use abc 准备使用abc这个数据库
db.createUser({user:'ttt',pwd:'ttt',roles:[{role:'sysadmin',db:'admin'}]}) 创建abc数据库,并创建账号密码
配置成功后,在自己电脑安装mongochef-x64.msi.zip进行解压安装,根据下面配置远程服务器链接,连接成功后,创建数据库B2B,把原数据库复制到新搭建的数据库中。

F、安装GraphicsMagick,安装前需要先安装
yum install libjpeg* libpng*
yum install libpng*
然后
tar -zxvf GraphicsMagick-1.3.20.tar.gz && cd GraphicsMagick-1.3.20 && ./configure && make && make install

G.先到源码的服务器中进行设置打包商城B2B和配置参数文件 node_modules
cd /website
tar -czvf node_modules.tar.gz node_modules 压缩NPM库
tar -czvf b2b.tar.gz b2b 压缩项目源码
登陆需搭建的客户服务器,进入所配置的/website
scp -v root@120.24.76.100:/website/node_modules.tar.gz /website 根据文件大小远程拉取
scp -v root@120.24.76.100:/website/b2b.tar.gz /website 根据文件大小远程拉取,文件可能比较大,时间比较慢
拉取完成后可以进行解压
tar -xzvf node_modules.tar.gz 解压NPM库
tar -xzvf b2b.tar.gz 解压项目源码
如果有在其他服务器拉取上述步骤就不需要走下面的步骤
最后再安装系统所需要的一些NPM库,这个需要在所配置的/website目录下安装,这个目录是用来保存网站项目的
cd /website 进入website
开始安装一些必要的npm库
npm install formidable@latest 安装node.js后可安装
npm install redis 需要安装redis后再安装
npm install mongodb 需要安装mongodb后再安装
npm install gm 需要安装GraphicsMagick后再安装
npm install q
npm install iconv-lite
npm install ejs
npm install alidayu
npm install blueimp-md5
npm install co
npm install co-alidayu
npm install crypto
npm install jwt-simple
npm install node-xlsx
npm install jshint
npm install jssha
npm install excel-export
三、网站源码部署
搭建成功后采用Webstorm进行远程了解项目,对项目中的服务器文件进行调整。
接下来打开吧b2b项目对文档的修改
服务器文件修改:b2b_qt.js b2b_ht.js
修改服务器端口:

修改数据库连接配置:

var urla = 'mongodb://用户名:密码@127.0.0.1:27017/数据库名称';
var log = 'mongodb://用户名:密码@127.0.0.1:27017/数据库名称;

安装pm2进程管理器
npm install -g pm2

cd website
cd b2b
pm2 flush && pm2 start b2b_qt.js && pm2 logs b2b_qt.js
pm2 flush && pm2 start b2b_ht.js && pm2 logs b2b_ht.js
进入项目底下启动服务文件

辅助功能地址:http://oss.yczlweb.com/