react博客-项目部署
🚧 🚧提示
本文最后于 2020年5月13日 更新,部分内容可能已经过时,请在阅读本文时注意参考最新的信息。
阿里云最近推出了一个“在家实践活动”,免费领取半年的服务器,真香。领取地址
购买阿里云服务器
购买完成后会得到一个公网ip
下载软件putty
来连接我们刚才购买的服务器,只需输入公网 ip 点击 open 即可
在命令行中输入用户名root
和密码得到Welcome to Alibaba Cloud Elastic Compute Service !
即完成了连接。
使用宝塔进行管理
https://www.bt.cn/bbs/thread-19376-1-1.html
连接成功服务器后在命令行输入(Centos系统,其他系统查看上面网址),复制按下鼠标右键完成宝塔的安装
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装成功后会返回一个端口号为 8888 的网站以及账号和密码:
访问该地址,这个时候网站时不能访问的,因为远程服务器没有开放 8888 端口。
设置教程:
https://www.bt.cn/bbs/thread-2897-1-1.html
登录成功后安装 mysql 和 nginx(之后几乎所有的操作都在宝塔上进行)
需要安装软件
- php 环境(用于 phpmyadmin)
- phpMyAdmin(用于管理 mysql 数据库)
- PM2(自带 node 环境)
- nginx
开放 80(http)端口访问服务器
在阿里云服务器管理控制台安 全组中设置
设置后就可以通过公网 ip 访问服务器了
部署项目
切换镜像源
安装 nrm(用来管理 npm 镜像源的工具)npm install -g nrm
常用命令
- nrm ls 查看所有源地址
- nrm use taobao 切换为淘宝镜像源
- nrm add [name] [url] 添加源地址
通过 git 克隆代码到服务器
把代码 clone 到服务器
打包项目并且部署
- 部署前台页面(next.js)
yarn build
yarn start
或者用 PM2 进行进程守护(待研究)
- 部署后台接口(egg.js)
npm start
- 部署后台管理系统
直接npm build
然后使用 nginx 进行代理
导入 mysql 数据出错
在导入本 地 mysql 文件时遇到了一些错误,参考文章:
Linux 查看端口号占用情况以及杀进程命令
-
netstart -anp(查看端口占用情况)
-
lsof -i:8080(查看 8080 端口占用情况)
-
kill -9 1234(杀 PID=1234 进程)