egg.js+vue.js 云服务器部署 -- 环境配置

最近用egg+mysql+vue3.0+ts写了个自己的网站,并放到服务器。由于是第一次部署服务器,都是自己摸索和网友协助完成。

写个流程防止以后忘记;

前端是用vue3.0全家桶+ts;后端是egg.js+mysql;该博文不涉及项目内容,后续有时间再写个项目篇;



1、既然是云服务器部署,肯定得先购买服务器,博主是个前端小白,对服务器也是一无所知,所以买了个阿里云最便宜的练练手(1 vCPU 1 GiB 1Mbps CentOS 7.6),一年不到600大洋;

2、购买之后登录阿里云 -- 实例下就能找到自己刚刚购买的服务器了。接下来就是要进入服务器安装各种环境了。下载XShell和Xftp这两工具。XShell 用于运行各种命令操作,Xftp用于上传文件;阿里云上也可直接远程连接,第一次使用会提供一个6位数连接密码,自行保存并修改密码;

2.1、XShell的使用;

文件 -- 新建:

接下来就可以输入账号密码登录;(密码需在阿里云实例重置密码,并重启服务器;);


登录成功之后便可操作服务器了;


2.2、Xftp的使用

同理,新建;协议选择:SFTP


3、工具安装好了,接下来就是配置各种环境了。

3.1 node 环境配置;

node下载地址:https://nodejs.org/zh-cn/download/

        1、选择目录并下载node压缩包 v10.15.1;(我放在了/usr/src/)

wget https://nodejs.org/dist/v10.15.1/node-v10.15.1-linux-x64.tar.xz

        2、将tar.xz 解压成 .tar

xz -d node-v10.15.1-linux-x64.tar.xz

        3、解压tar包

tar -xvf node-v10.15.1-linux-x64.tar

        4、添加软连接

ln -s /usr/src/node-v10.15.1-linux-x64/bin/npm /usr/local/bin/

ln -s /usr/src/node-v10.15.1-linux-x64/bin/node /usr/local/bin/

        5、检查node是否安装成功

node --version


3.2 cnpm 安装

        1、由于我的egg.js项目 npm 下载依赖包老是报错,要用cnpm下载包,干脆把cnpm一起安装了;

npm install -g cnpm --registry=https://registry.npm.taobao.org

        2、添加软连接;(由于我的egg.js egg-sequelize 初始化mysql需要用到npx,所以一起添加了软连接)

ln -s /usr/src/node-v10.15.1-linux-x64/bin/cnpm /usr/local/bin/

ln -s /usr/src/node-v10.15.1-linux-x64/bin/npx /usr/local/bin/

3.3 mysql安装

我的后台数据是用mysql储存,所以先安装mysql; 这个就就用汪神的博文记录下在阿里云linux上安装与配置Mysq

https://www.cnblogs.com/wangshen31/p/9556804.html

        1、安装完之后登录mysql,首次登录先获取临时密码;

grep "password" /var/log/mysqld.log

        2、登录mysql;

mysql -u root -p

此时我们操作mysql 会报错;


3、修改mysql 密码

ALTER USER USER() IDENTIFIED BY '123456';

不出意外的话依旧会报错;


这是密码策略问题;网上找了一些办法修改策略权限,但是都不管用,因为你只要运行其他命令就会报刚刚那错。无奈之下我只好屈服于其淫威之下。改成包含英文大小写、特殊字符和数字的;

ALTER USER USER() IDENTIFIED BY 'Abc123..';

此时会提示修改成功,这次该轮到我来树立规则了;

a.查看 mysql 初始的密码策略 

SHOW VARIABLES LIKE 'validate_password%';


b.设置密码的验证强度等级

set global validate_password_policy=LOW;

c.设置密码长度

set global validate_password_length=6;

可以通过命令自行设置密码策略;

关于 mysql 密码策略相关参数;

1)、validate_password_length  固定密码的总长度;

2)、validate_password_dictionary_file 指定密码验证的文件路径;

3)、validate_password_mixed_case_count  整个密码中至少要包含大/小写字母的总个数;

4)、validate_password_number_count  整个密码中至少要包含阿拉伯数字的个数;

5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;

关于 validate_password_policy 的取值:

        0/LOW:只验证长度;

        1/MEDIUM:验证长度、数字、大小写、特殊字符;

        2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;

MySQL默认root用户只能本地登录,如果要远程连接:下面2条命令;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

flush privileges;

然后阿里云上安全组开放3306 端口;


3.4 安装nginx

参考https://blog.csdn.net/qq_32953079/article/details/81975160

顺便把git也安装了

yum install git

环境配置完毕,接下来就是项目部署了,未完,待续!

你可能感兴趣的:(egg.js+vue.js 云服务器部署 -- 环境配置)