最近用CocosCreator做原生小游戏app,需要部署后端node.js服务器。参考了很多文章,踩了一堆坑。现在做个总结。
1.选择服务器
市面上的服务器供应商太多了,目前就以主流的阿里云和腾讯云作为参考。正好前几天腾讯云做活动,就买了一年的服务器和域名,开始建站了。
我的云服务器
购买过程就不多说了,总之选好产品,下一步下一步,付款,就OK了。然后就是域名实名认证和备案,这个也简单,上传一下身份信息,申请一下,三四天就能搞定。
云服务器购买好了之后,选择系统为CentOS7.5,装机,耐心等待一分钟就OK了。这时候我们就可以尝试用XShell和WinSCP来连接主机了。
2.安装前的准备工作
配置好IP地址,账号,密码,端口以及协议,然后点击登录,出现这个画面就说明成功了。
这个时候我们就要开始安装各种软件了。
把yum升级到最新版本:
yum -y update
我们将选用最新源代码构建Node.js,要进行软件的安装,需要一组用来编译源代码的开发工具:
yum -y groupinstall "Development Tools"
如果出现wget: command not found,还需要安装wget
yum -y install wget
3.安装Node.js
开始安装node.js,先进入usr/src这个文件夹,这个文件夹通常用来存放软件源代码。
cd /usr/src
从Node.js的站点获取压缩档源代码,我目前选择的是12.16.3
wget https://cdn.npm.taobao.org/dist/node/v12.16.3/node-v12.16.3-linux-x64.tar.gz
外网的话,还是下载原版的快一些。
wget https://nodejs.org/dist/v12.16.3/node-v12.16.3-linux-x64.tar.gz
解压源文件到当前文件夹
tar zxf node-v12.16.3-linux-x64.tar.gz
打开WinSCP并进入当前文件夹,重命名解压出来的文件夹为node
然后在XShell中进入到这个node文件夹
cd node
建立超级链接,使node和npm全局有效,不然sudo node时会报“commond not found”的错误
sudo ln -s /usr/src/node/bin/node /usr/local/bin/node
sudo ln -s /usr/src/node/bin/npm /usr/bin/npm
查看node和npm的版本
node -v
npm -v
到这一步,我们就完成了Node.js软件的安装,然后用WinSCP删除掉之前下载的压缩文件。
4.安装Redis
还是进入src文件夹下面,下载Redis,这里我们选择5.0.4版本。
cd /usr/src
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
解压文件
tar -zxvf redis-5.0.4.tar.gz
安装依赖
yum install gcc
yum install gcc-c++
进入Redis目录,编译文件
cd redis-5.0.4
make
make install
然后修改我们的配置文件Redis.conf
vim redis.conf
如果出现vim: command not found,则需要安装vim模块
yum -y install vim*
699行,appendonly后面的no改为yes
移动键盘上下左右,找到507行requirepass,INS键切换输入模式,去掉前面的#号,后面可以设置密码。这里我就偷个懒不改了。
136行设置后台运行,按INS键,将no改为yes
69行设置允许远程连接,在bind前面添加#号。
然后按ESC键,跳出修改功能,输入“:wq”退出。
修改CentOS防火墙开通6379端口(redis默认端口)
systemctl stop firewalld
systemctl mask firewalld
启动Redis
/usr/src/redis-5.0.4/src/redis-server /usr/src/redis-5.0.4/redis.conf
关闭redis
/usr/src/redis-5.0.4/src/redis-cli shutdown
强制关闭
ps -ef | grep redis
kill -9 进程id
到这里,Redis就已经安装完毕了。
5.安装Mysql数据库
mysql数据库是我在建站的时候用宝塔linux面板安装好的,这里不另外写。只说说遇到的两个坑吧。
坑1:WordPress网站的数据库默认是后台phpMyadmin连接使用的,HeidySql默认是不能远程登录的。如果要登录,需要在宝塔linux面板后台创建一个新的数据库,设置账号和密码,权限设置为所有人。
坑2:在宝塔linux面板选择安全,端口控制里,放行端口填写3306,备注数据库,这样远程ip才能连接访问数据库。做了这两步,才能正常访问。