国庆死宅在家时看到腾讯云搞活动,云主机8块钱一个月,正好前段时间写了个node的后台管理系统,于是就买了3个月正好可以自己熟悉一下项目部署的全部过程。
0、登陆服务器
如果你买的主机的系统不是centos 7.2
的话,可以跟着腾讯云的文档来一步步走,如果你是和我一样的小白,买服务器的时候用的默认配置即操作系统是centos 7.2
的话,可以参考这个文档进行登录。
(ps:最开始我一直不能用windows的远程桌面登录我还一直以为是我电脑的问题,直到我提交了工单,才发现centos 7.2
无法使用window远程桌面进行登录)
1、部署node环境
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| // 使用 wget 安装方式 wget https://nodejs.org/dist/v6.10.3/node-v6.10.3-linux-x64.tar.xz
// 解压 tar xvJf node-v6.10.3-linux-x64.tar.xz
// 将解压的 Node.js 目录移动到 /usr/local 目录下 mv node-v6.10.3-linux-x64 /usr/local/node ln -s /usr/local/node/bin/node /bin/node
// 配置和使用 npm ln -s /usr/local/node/bin/npm /bin/npm
// 配置环境变量 echo 'export PATH=/usr/local/node/bin:$PATH' >> /etc/profile
// 生效环境变量 source /etc/profile
|
然后使用命令node -v
来测试是否安装成功,如果出现以下输出,那么恭喜你,成功配置了node环境!
1.1升级node版本
目前我们安装的node是6.x版本的,那么我们如何在linux下升级node呢?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| // 安装node版本管理工具 n npm install -g n
// 进入该文件进行编辑 vim ~/.bash_profile
// 将下面两行代码插入到文件末尾 export N_PREFIX=/usr/local export PATH=$N_PREFIX/bin:$PATH
// 按下esc,然后输入 :wq
// 执行source使修改生效 source ~/.bash_profile
// 执行n模版的升级命令 n stable
|
执行node -v看看,有没有成功升级
2、部署Nginx
Nginx
可能很多搞前端的小伙伴没怎么接触过(其实我也没怎么接触过…),但是你一定经常看到这个
Nginx与前端开发这篇文章应该是一个很好的读物,介绍了Nginx。
1 2 3 4 5 6 7 8
| // 添加CentOS 7 Nginx yum资源库 rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
// 安装nginx yum install -y nginx
// 启动Nginx systemctl start nginx.service
|
如果你的服务器一切正常的话,你应该会看到这个页面
2.1部署vue前端项目
接上文,我们发现nginx的首页即上图的路径是在usr/share/nginx/html
下,于是我们把打包后的vue项目用ftp上传至该目录下。直接用ip访问试试看
perfect,我们完成了第一步,接下来我们来把后端代码也部署到服务器。
2.2部署node后端项目
2.2.1ftp上传项目
我们需要使用ftp把后端项目上传到服务器,首先在/usr/local/
路径下新建一个deployment
文件夹里面用来存放后端项目。
2.2.2安装pm2并启动nodejs项目
1 2 3
| npm install -g pm2 cd /usr/local/deployment pm2 start app.js
|
由于我的后端项目是运行在8081端口的,首先要去腾讯云开放8081端口,
端口开放成功后,执行pm2 restart all
来重新启动后端项目,然后访问网站的8081端口
nice,后端也成功部署上去了,接下来就是安装mysql了。
3、安装mysql
依次执行以下命令
1 2 3 4
| wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm // 下载mysql的源 yum localinstall -y mysql57-community-release-el7-7.noarch.rpm // 安装yum库 yum install -y mysql-community-server // 安装MySQL systemctl start mysqld.service // 启动MySQL服务
|
MySQL5.7加强了root用户的安全性,因此在第一次安装后会初始化一个随机密码,以下为查看初始随机密码的方式
1
| grep 'temporary password' /var/log/mysqld.log
|
用上面查看到的随机密码登录mysql
修改mysql密码方式
1
| alter user user() identified by "123456";
|
but,这样的密码肯定是不符合mysql的密码规则的,但是我们又不想设置多复杂的密码,那么执行以下命令就可以解决了
1
| set global validate_password_policy=0;
|
然后执行如下命令授权远程链接
1 2
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;
|
4、部署后端接口
在本地下载navicat,然后连接mysql(ps:ssh栏目的密码是服务器的密码,常规栏目的密码是mysql的密码)

,这边不会的可以看看[这篇文章](https://blog.csdn.net/fenfei12138/article/details/49661879)
然后打开网站发现…终于部署上去了。