阿里云服务器配置node.js环境并成功测试
前言:
本人前端一枚(仰望大神),因工作需要吧,需要在云服务器上搭建node.js环境并亲自实验一下测试文件。由于自己是新手,实在没接触过后端(服务器),所以看了很多网上的教程,也踏了很多坑(网上的教程没有一篇是完整能用的,作者不仔细,后来者就要受折磨),为此特意写一下自己的过程,并做个记录。
参考:
阿里云文档:部署Node.js项目(CentOS)
某篇博客(CentOS)
PM2实用入门指南
推荐给需要的人---express自动生成的项目框架
准备工作
1.一个运行起来的阿里云服务器(连接了公网),我的是CentOS7.2
2.使用工具:Xftp 和 Xshell
一 远程连接服务器
先安装好Xshell,打开你会看到下面的窗口
Xshell.png
点击新建并设置和填写如下信息:
填好后先不要点确定.png
填好后先不要点确定,点击左侧树状图中“用户身份验证”,填写信息:
image.png
然后点击确定后,就会像上面第一张图显示的,然后点击连接,连接成功如图显示:
成功连接.png
或者不用Xshell,打开云服务器控制台
点击远程链接.png
会转到下面的窗口:
网页版的.png
之后出现以下界面:
登陆成功.png
至此,远程连接服务器已完成。
二 安装Node.js
按照 阿里云文档:部署Node.js项目(CentOS) 教程中的操作步骤中的步骤2 ,我使用的是二进制文件安装
安装步骤:
1,wget命令下载Node.js安装包。该安装包是编译好的文件,解压之后,在bin文件夹中就已存在node和npm,无需重复编译。
wget https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-x64.tar.xz
2, 解压文件。
tar xvf node-v6.9.5-linux-x64.tar.xz
3, 创建软链接,使node和npm命令全局有效。通过创建软链接的方法,使得在任意目录下都可以直接使用node和npm命令:
1, ln -s /root/node-v6.9.5-linux-x64/bin/node /usr/local/bin/node
2, ln -s /root/node-v6.9.5-linux-x64/bin/npm /usr/local/bin/npm
4, 查看node、npm版本。
1, node -v
2, npm -v
5,软件默认安装在/root/node-v6.9.5-linux-x64/目录下。如果需要将该软件安装到其他目录(如:/opt/node/)下,请进行如下操作:
1, mkdir -p /opt/node/
2, mv /root/node-v6.9.5-linux-x64/* /opt/node/
3, rm -f /usr/local/bin/node
4, rm -f /usr/local/bin/npm
5, ln -s /opt/node/bin/node /usr/local/bin/node
6, ln -s /opt/node/bin/npm /usr/local/bin/npm
至此,Node.js环境已安装完毕。
三 安装mongodb
1,进入 /usr/local/:
cd /usr/local
2, 安装mongodb:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.5.tgz
3, 解压安装包,并重命名文件夹为mongodb
1, tar zxvf mongodb-linux-x86_64-3.4.5.tgz
2, mv mongodb-linux-x86_64-3.4.5 mongodb
4, 创建数据和日志存放目录
mkdir /usr/local/mongodb/data
mkdir /usr/local/mongodb/logs
5, 设置开机启动项
打开rc.local文件,添加CentOS开机启动项:
vim /etc/rc.d/rc.local
打开文件后输入‘i’启用编辑。将mongodb启动命令追加到本文件中,让mongodb开机自启动:
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath /usr/local/mongodb/logs/log.log -fork
将以上代码输入图中位置.png
然后按ESC推出编辑 并直接输入 :wq (冒号wq)回车保存并关闭文件。
6,手动启动mongodb
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath /usr/local/mongodb/logs/log.log -fork
到此数据库安装和启动已完成。
四 安装pm2
1,通过npm全局安装:
npm install pm2 -g
2, 设置环境变量
使用 vim 命令打开文件 /etc/profile
vim /etc/profile
按‘i’启动编辑,将pm2的路径添加到环境变量中
pm2的路径.png
PATH=$PATH:/opt/node/lib/node_modules/pm2/bin
图中位置.png
按ESC退出编辑,:wq 保存并关闭文件 ,之后输入:source /etc/profile 让变量生效。
五 上传测试项目
1, 打开Xftp 并连接服务器
按以下图中操作登陆
成功登陆.png
2, 上传项目文件
我将文件传到了/home下
直接拉过来.png
六 用PM2启动项目
启动项目之前首先要注意下自己当前的目录,要先cd到上传项目的文件夹内才可以启动,启动代码如下:
pm2 start ./bin/www --watch
成功启动.png
然后你就可以在浏览器中输入你的公网ip(或者域名):端口号 访问你上传的文件了
结束语
至此,部署全部完成。在这里我要声明一句,我的测试文件是用express自动生成的项目框架。
本人亦是小白,从未接触过Linux,整个过程确实没少折腾,不过幸好成功了,没白费心血。不过我这里还想再说一句:那些凡是上传教程到网上的作者,希望你们再用点心
仔细一点,仔细一点,仔细一点
兼顾一下小白们,这也让后来者少踏很多坑。
后记:
因为现在服务器的端口是3000,但是我想改成80的端口,我做了以下操作:
1,登陆阿里云服务器,添加安全组规则,设置80/80;
2,项目的app.js文件里添加 app.listen(80);
就可以了