前言:
最近一段时间在学习nodejs编程,我们知道现在做软件项目主流是前后端分离操作。作为一个前端小白,为了实现一个人完成整个项目的心愿,用nodejs编写了后端代码,准备部署到阿里云服务器上,作为接口供前端使用。
操作目的:
(1)熟悉阿里云服务器上安装的linux系统操作
(2)配置nodejs环境,并编写项目
(3)配置mongoDB数据库
(4)熟练操作shell命令,操作、部署项目
用到的环境、软件:
阿里云服务器、Xshell、Xftp、CentOS7.3、mongoDB、postman、Robo 3T
具体操作:
-
购买阿里云服务器、安装centOS 7.3;
-
安装Xshell、Xftp,连接远程服务器:
用Xshell远程连接云服务器:
连接成功,进入shell界面:
- 安装Node.js
解压,测试安装是否成功:
此时,node.js已经安装成功,但仍不能全局使用node 和 npm,用以下命令修改以达到目的。
补充知识:
ln是linux中一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,(symbolic代号的意思)
具体用法是:ln -s 源文件 目标文件
由分析可知,node解压在了/root下,那么我们要用命令:
ln -s /root/node-v8.9.3-linux-x64/bin/node /usr/sbin/node
执行文件命令,查看:
同理更改npm,测试查看:
- 安装mongoDB
解压:
创建数据和日志存放目录
更改配置,启动mongodb命令:
将下列代码填写到 mongo.conf:
dbpath=/mongodb/data
logpath=/mongodb/logs/mongo.log
logappend=true
journal=true
quiet=true
port=27017
fork=true #后台运行
bind_ip=0.0.0.0 #允许任何IP进行连接auth=false #是否授权连接
将安装包移动到usr/local
修改环境变量:
尝试了无权限修改 /~/.bashrc 所以改为软连接
运行 mongo –config /user/local/mongodb/logs/mongo.conf
再运行mongo,得:
这时应该打开第二个窗口 进入/usr/local/mongodb/bin,运行./mongod 即可进入数据库:
数据库搭建完成
第二次进入 直接进 usr/local/mongoDB/bin 运行 ./mongod开启数据库
5. 用xftp传输项目到云服务器上
用xftp将项目拖至 /home文件夹下
查看是否成功:
- 运行代码
先重新软连接
运行代码报错:缺少包
安装一系列包后:
服务器和数据库连接成功:
但是在postman测试仍不能连接成功
经查证,要在阿里云开放端口:
项目部署成功!
- 最终成果:
接口1:发送邮箱验证码接口:
接口2:注册接口!
用Robo 3T查看刚才注册的用户:
接口3:登录接口
假设输错密码:
至此完毕!
8. 总结
学习了一个学期的linux,觉得这门课对我们来说意义重大。项目工程部署必会用到,这次大作业算是在项目中实践了一回。在安装配置的过程中踩了很多坑,各种权限各种包问题层出不穷,特别是装mongodb的时候!经过查阅资料,搜索问题,最终终于解决了,让项目成功在云服务器上跑了起来!激动!!!
后续:我弄了一个apidoc文档 可是linux上总是软连接不成功 只能每次运行用/usr/local/node/bin/apidoc -i ./ -o ./dir来运行apidoc
具体代码github:我的github地址