自建windows服务器如何部署egg应用(图文详解)
(编辑:jimmy 日期: 2024/12/31 浏览:3 次 )
1. 使用IE浏览器登陆VPN
2. 远程登陆
3. 在服务器安装最新的node.js,git等
4. 下载源码> git clone ****.git
5. npm安装依赖> cd you-project> npm i
6. 使用egg单进程启动
// 安装最新的egg包 // 在项目根目录下新建run.js const egg = require('egg'); function normalizePort(val) { const listenPort = parseInt(val, 10); if (isNaN(listenPort)) { return val; } if (listenPort >= 0) { return listenPort; } return false; } const port = normalizePort(process.env.PORT) || 3000; egg.start({ ignoreWarning: true }) .then(app => { app.listen(port); app.logger.info(`server running on ${port} ...`); });
测试启动
> node run.js
7. pm2启动安装pm2
> npm i pm2 -g
新建pm2启动文件
module.exports = { apps : [{ name: '****', script: 'run.js', // Options reference: https://pm2.io/doc/en/runtime/reference/ecosystem-file/ args: 'one two', instances: 4, autorestart: true, watch: false, max_memory_restart: '4G', env: { NODE_ENV: 'development', }, env_production: { NODE_ENV: 'production', APP_URL: '*****', DB_HOST: 'localhost', DB_PORT: '3306', DB_USERNAME: '*****', DB_PASSWORD: '*****', DB_DATABASE: '*****', EGG_SERVER_ENV: '****', }, }], };
生产环境启动
$ pm2 start ecosystem.config.js --env production
测试环境启动
$ pm2 start ecosystem.config.js
8. 开放3000端口
参考 https://www.jb51.net/article/172191.htm
9. 安装mysql,
参考:https://www.jb51.net/article/170594.htm
设置mysql开机启动
10. 设置pm2开机启动,使用nssm
查看PM2_HOME, pm2 save
设置系统环境变量 PM2_HOME = C:\Users\GYSD\.pm2
验证 echo %PM2_HOME%
创建启动脚本 pm2_startup.bat
@echo off set HOMEDRIVE=C: set PM2_HOME=C:\Users\***\.pm2 @REM Ensure that pm2 command is part of your PATH variable @REM if you're not sure, add it here, as follow: set path=C:\Users\****\AppData\Roaming\npm;%path% @REM Optionally, you can add 'pm2 kill' just before @REM resurrect (adding a sleep between 2 commands): @REM pm2 kill @REM timeout /t 5 /nobreak > NUL @REM pm2 resurrect @REM otherwise, you can simple call resurrect as follow: pm2 resurrect echo "Done"
nssm.exe install MyPM2Service
选择自己的 pm2_startup.bat
路径
重启查看
总结
以上所述是小编给大家介绍的自建windows服务器如何部署egg应用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
下一篇:Linux中nohup与&的用法和区别详解