Egg.js 为企业级框架和应用而生,本次项目的后端采用 Egg.js + mysql 进行开发,本文简单记录 Egg 项目的部署流程。
1. 购买服务器与域名
阿里云、腾讯云等等都可以购买到服务器和域名,这里就不详细讲了。
2. 下载宝塔面板
到宝塔官网上下载面板
登陆宝塔之后,添加网站
这里的域名填写的是你之后需要进行访问的域名
3. 上传文件
选择【文件】,创建,新增文件夹,并将需要上传的项目代码进行压缩,拖拽到此前目录中,并解压,解压后为这样↓
打开终端,把 egg-scripts 模块作为 dependencies 引入:
运行 yarn add egg-scripts --save
添加 npm scripts 到 package.json:
{
"scripts": {
"start": "egg-scripts start --daemon",
"stop": "egg-scripts stop"
}
}
这个是 egg 提供的 egg-scripts 来支持线上环境的运行和停止:通过 yarn start 和 yarn stop 命令启动或停止应用
运行 yarn start
4. 配置云数据库并修改文件配置
点击【数据库】,如果没有安装数据库,会提示进行安装的。安装好之后添加数据库
打开Navicat工具,连接数据库
配置SSH,这里填写的是服务器的用户名和密码
配置常规后,点击测试连接,提示连接成功后,点击【确定】即可
将本地数据库的数据和结构导出为sql文件,在云数据库上运行该sql语句即可将本地数据库的表和数据拷贝过来
装好数据库之后,在【安全】,放行 3306 端口,在文件中找到config/config.default.js文件进行配置(改为云上的数据库)
5. Nignx反向代理
在【安全】,放行7001端口
返回【网站】,点击【设置】,选择【反向代理】
6. 最后
完成上述步骤之后,egg 项目就部署到服务器上了,可以通过域名进行访问。