如果您采用了 Egg.js 框架进行 Web 开发,那么可以采用 Egg 框架提供的插件来进行部署。
全局安装方式参考自助式部署 runtime。
有时候,同机会部署多个项目,期望多版本共存时,则可以把 runtime 安装到当前项目:
npm i nodeinstall -g
nodeinstall --install-alinode ^3
nodeinstall
会把对应版本的 alinode
安装到项目的 node_modules
目录下。
注意:打包机的操作系统和线上系统需保持一致,否则对应的 runtime 不一定能正常运行。
注意:alinode 不支持 Windows 操作系统,开发时,请使用兼容的官方版本进行开发。
2. 安装 egg-alinode 插件
执行如下命令将 egg-alinode 依赖安装并保存到您的 Node.js 项目中:
npm i egg-alinode --save
3. 在 Egg 项目的 config/plugin.js 中启用此插件
// config/plugin.js
exports.alinode = {
enable: true,
package: 'egg-alinode'
};
4. 在 Egg 项目的 config/config.default.js 中添加配置
// config/config.default.js
exports.alinode = {
server: 'wss://agentserver.node.aliyun.com:8080',
appid: 'Node.js 性能平台给您的项目生成的 appid',
secret: 'Node.js 性能平台给您的项目生成的 secret',
logdir: 'Node.js 性能平台日志输出地址绝对路径,与 NODE_LOG_DIR 保持一致。如:/tmp/',
error_log: [
'您的应用在业务层面产生的异常日志的路径,数组,可选,可配置多个',
'例如:/root/.logs/error.#YYYY#-#MM#-#DD#.log',
'不更改 Egg 默认日志输出路径可不配置本项目',
],
agentidMode:'IP' '可选,如果设置,则在实例ID中添加部分IP信息,用于多个实例 hostname 相同的场景(以容器为主)'
};
下面是参数含义及获取方式
appid: 您的应用 id,在 Node.js 性能平台 控制台中应用的
设置
页面获取secret: 您的应用 secret,在 Node.js 性能平台 控制台中应用的
设置
页面获取logdir: 您使用 Node.js 性能平台提供的 runtime 运行 Node.js 项目生成的日志存放地点,和启动应用时设置的环境变量 NODE_LOG_DIR 的值保持一致,以绝对路径形式提供,默认为
/tmp/
error_log: 您的 Node.js 项目生成的异常日志目录,Egg 在生产环境下默认会将 Web 日志输出到
$HOME/logs/
目录下,如果您不更改 Egg 的日志输出配置,那么本字段默认即可,无需额外配置
5. 使用 Node.js 性能平台提供的 runtime 启动 Egg 应用
egg-scripts start --daemon
文档内容是否对您有帮助?