【大树云微课堂】-NodeJS + Mongodb 上线 CentOS 7.3 云服务器

当我们完成项目的开发时,会想着购买云服务?部署项目,但是要怎么操作呢?

一、购买云服务器

注册,实名认证,买了个?年360元最低配制 CPU: 1核 / 内存: 1024 MB / 带宽:1Mbps / 操作系统: CentOS 7.3

● 购买环节会设置 ssh 登陆密码,记下密码。


登陆到云服务?,查看购买的实例,找到公? IP。

二、登陆服务?

打开 Terminal, 输?

● ssh root @公网IP 登陆服务?。?次登陆会询问公钥,yes 即可。

使用 root ?户身份登陆后,会直接进入到下图 红?箭头标出的 root ?录下。先 cd .. 跳转到上?层, 再 ls -a ,就可以看到?录结构了。

详情可以进入这个网站看看 http://www.runoob.com/linux/linux-system-contents.html

● 常?的 Linux 命令:
     cd    进??录
     cd .. 返回上?个?录
     ls -a 查看当前?录
     mkdir abc 创建 abc ?件夹
     mv 移动或重命名
     rm 删除?个?件或者目录

三、安装 NodeJS 和 Mongodb

node         -- 编译后?进制?件应在 /usr/local/bin/node 下
mongodb -- 安装在 /usr/local/mongodb 下

1. 安装 NodeJS

升级 CentOS 的 yum
● yum -y update

升级常?库?件
● yum -y install gcc gcc-c++ autoconf

跳转到 /usr/local/src , 这个文件夹通常?来存放软件源代码
● cd /usr/local/src

下载 nodejs 代码
● wget http://nodejs.org/dist/v8.4.0/node-v8.4.0.tar.gz

解压
● tar -xzvf node-v8.4.0.tar.gz

进?解压后的?件夹
● cd node-v8.4.0

执行配置脚本来进行编译预处理
● ./configure

编译源代码
● make

当编译完成后,需要使之在系统范围内可?, 编译后的?进制文件将放置到系统路径,默认情况下,Node 二进制文件应该放在 /user/local/bin/node 文件夹下
● make install

安装 express 推荐 global 安装
● npm -g install express

建立超级链接, 不然 sudo node 时会报 "command not found"
● sudo ln -s /usr/local/bin/node /usr/bin/node
● sudo ln -s /usr/local/lib/node /usr/lib/node
● sudo ln -s /usr/local/bin/npm /usr/bin/npm
● sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf

NodeJS 到这?就基本安装完成了。

上传 NodeJS 代码
● 代码存放位置: /home/ cd /home 进??录
PS: 其实 /home 应该下?有个?户目录,然后项?放在用户?录里面
我使? https://gitee.com/squallml 码云来中转服务?代码,这个和 github 使用差不不多,主要是私有项目是免费的。

到 home ?目录下,接代码下来
● git clone https://gitee.com/squallml/taoprojectserver.git

更新项目库文件
● npm install

以后代码更新,只要在?己电脑上 git push 上码云后,服务?上 git pull 拉下来就?了。

2. 安装 mongodb
● 软件安装位置:/usr/local/mongodb
● 数据存放位置:/home/mongodb/data
● 数据备份位置:/home/mongodb/bak
● 日志存放位置:/home/mongodb/logs
PS: 其实 /home 应该下?有个用户?录,然后项?放在?户?录?面

下载安装包
● cd /usr/local wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.0.tgz

解压安装包,重命名文件夹为mongodb
● tar zxvf mongodb-linux-x86_64-3.4.0.tgz mv mongodb-linux-x86_64-3.4.0 mongodb

创建数据和?志存放目录
● mkdir /home/mongodb
● mkdir /home/mongodb/data
● mkdir /home/mongodb/bak
● mkdir /home/mongodb/logs

安装完成后,我们可以把 MongoDB 的?进制命令文件?录(安装?录 /bin)添加到 PATH 路路径中:
● export PATH=/usr/local/mongodb/bin:$PATH

启动 Mongodb
● mongod --dbpath=/var/mongodb/data --logpath /var/mongodb/logs/log.log -fork

启动 mongo shell
● mongo

创建数据库管理员
在 mongo shell 中创建管理员及数据库切换到 admin 数据库,创建超级管理员帐号

● use admin db.createUser({ user: "?户名", pwd:"登陆密码", roles:[{ role:"userAdminAnyDatabase", db: "admin" }] })

切换到要使?的数据库,如 taodb 数据库,创建这个数据库的管理员帐号
● use taodb db.createUser({ user: "?用户名", pwd:"登陆密码", roles:[ { role:"readWrite", db: "taodb" }] //读写权限 })
● 按二下 control+c 退出 mongo shell

到这里 mongodb 基本已经安装设置完成了。

3. MongoDB 备份 ( mongodump ) 与恢复 ( mongorestore )

备份--进?备份目录, 运行命令 mongodump 就会在当前目录下创建 dump 的数据备份文件
● cd /home/mongodb/bak mongodump

恢复--进?备份目录, 运行命令 mongorestore 就会在当前目录下 dump 数据备份文件还原回数据库
● cd /home/mongodb/bak mongorestore

详情操作可以看:http://www.runoob.com/mongodb/mongodb-mongodump-mongorestore.html

四、设置 Linux 开机启动 NodeJS 和 Mongodb

1. 安装进程守护软件 PM2

安装pm2
● npm install pm2@latest -g

cd 到项?目录
● cd /home/taoprojectserver

运行 -- 后面是参数 --name 改名, --watch 文件或文件夹变更时自动重启
● pm2 start app.js --name "tao" --watch true

把 node 服务加到进程
● pm2 startup centos #pm2 startup ubuntu pm2 save

这样,NodeJS 就?直在后台运行了,就算重启了,也自动运行。
常?命令总结如下:
● 安装pm2                   npm install pm2@latest -g
● 启动应用                   pm2 start app.js
● 列出所有应用            pm2 list
● 查看资源消耗            pm2 monit
● 查看某一个应用状态 pm2 describe [app id]
● 查看所有?志            pm2 logs
● 重启应用                   pm2 restart [app id]
● 停?应用                   pm2 stop [app id]
● 开启 api 访问            pm2 web

详情查看官?网地址:http://pm2.keymetrics.io/docs/usage/quick-start/

2. 设置 CentOS 开机启动项

打开rc.local?文件,添加CentOS开机启动项:
● vim /etc/rc.d/rc.local

进入 vim 模式
● 按 i 进?编辑模式, 加?以下代码到最后面
● 按esc 退出, :w 保存, :q 退出

将 mongodb 启动命令追加到本?文件中,让 mongodb 开机?启动:
● mongod --dbpath=/home/mongodb/data --logpath /home/mongodb/logs/log.log -fork

最后是这样。


退出 vim 后,按要求。运?以下命令
● chmod +x /etc/rc.d/rc.local

?此, CentOS 云服务器配制完成。

重启服务器测试一下。
● shutdown -r now

五、?些?具

1. Cyberduck SFTP管理工具
下载网址:https://cyberduck.io/ 下载后,新建连接 SFTP ,输?公网 IP ?户名: root 密码: 后,连接。
以后可以直接?这个可以管理服务?上文件。


2. Robo 3T mongodb 管理工具
下载网址:https://www.robomongo.org

3. LINUX中常?用操作命令

http://www.daniubiji.cn/archives/25

更多资讯,请关注?树云系列公众号:

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★博文作者未开放评论功能