欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

自建windows服务器如何部署egg应用(图文详解)

程序员文章站 2022-03-06 14:53:27
1. 使用ie浏览器登陆vpn2. 远程登陆3. 在服务器安装最新的node.js,git等4. 下载源码> git clone ****.git5. npm安装依赖> cd you-pr...

1. 使用ie浏览器登陆vpn

自建windows服务器如何部署egg应用(图文详解)
自建windows服务器如何部署egg应用(图文详解)

2. 远程登陆

自建windows服务器如何部署egg应用(图文详解)

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端口

参考

9. 安装mysql,

参考:

设置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应用(图文详解)

重启查看

自建windows服务器如何部署egg应用(图文详解)

总结

以上所述是小编给大家介绍的自建windows服务器如何部署egg应用,希望对大家有所帮助