本文以安装第三方依赖emoji为例,介绍如何为您的Node.js代码安装依赖,打包并部署代码至函数计算。
准备工作
- 创建一个用于测试的代码目录,如
mycode
。
- 在
mycode
目录下,建立index.js
文件。文件内容如下。
'use strict';
var emoji = require('node-emoji')
exports.handler = (event, context, callback) => {
console.log('hello world');
callback(null, emoji.get('thumbsup'));
}
使用npm安装依赖并部署代码
前提条件
- 您的本机已安装npm,且具有执行npm命令的权限。
- 您已在函数计算控制台创建Node.js函数。具体操作,请参见创建函数。
操作步骤
- 在
mycode
目录下执行npm install node-emoji
安装emoji依赖库到当前目录。
- 打包
mycode
目录下所有文件。
说明 请确保您创建的index.js
文件位于包的根目录。
- 在函数计算控制台找到目标函数,然后在函数详情页面的右上角,单击上传代码上传您上一步打包的ZIP包。
使用Serverless devs工具安装依赖并部署项目
前提条件
操作步骤
- 执行
cd /tmp/mycode
进入mycode
目录。
- 新增
s.yaml
文件。编写文件内容示例如下。
edition: 1.0.0 # 命令行YAML规范版本,遵循语义化版本(Semantic Versioning)规范
name: fcDeployApp # 项目名称
access: "default" # 密钥别名
services:
fc-deploy-test: # 服务名称
component: fc # 组件名称
props: # 组件的属性值
region: cn-shanghai
service:
name: fctest
description: 'test'
internetAccess: true
function:
name: emoji
description: this is a emoji
runtime: nodejs14
codeUri: ./
handler: index.handler
memorySize: 128
timeout: 6
- 新增
package.json
文件。编写文件内容如下。
{
"dependencies": {
"node-emoji": "^1.11.0"
}
}
- 执行
s build --use-docker
安装依赖。执行完成后,会在mycode
目录下生成一个.s
目录,依赖被安装到.s/build/artifacts/{serviceName}/{functionName}
目录下。
- 执行
s deploy
部署项目。执行完成后,即可部署函数到函数计算。
更多信息
您也可以使用
函数计算的层功能安装依赖,推荐您使用官方公共层或在线构建依赖层。具体操作,请参见以下文档。