1. 依赖库同代码一起打包上传
通过依赖管理工具,例如 npm,在本地安装依赖后同函数代码一同打包上传。
zip
包的根目录下。如果打包全体文件夹并上传 zip
包,则会因解压后无法在根目录找到入口文件而导致函数创建失落败。本文以安装 lodash
库为例:

在本地终端中实行 mkdir test-package
命令,创建一个目录用于存放函数代码和依赖库。
实行以下命令,在该目录下安装 lodash
依赖库。
cd test-packagenpm install lodash
在该目录下创建函数入口文件 index.js
并在代码中引用 lodash
库。
'use strict';const _ = require('lodash');exports.main_handler = async (event, context) => { console.log("Hello World") console.log(event) console.log(event["non-exist"]) console.log(context) return event};
将函数代码及依赖库一同压缩为 zip 包,在 云函数掌握台 中上传打包的 zip 包并创建一个新函数。操作步骤如下:
i. 登录 云函数掌握台,单击左侧导航栏的【函数做事】。
ii. 在主界面上方选择期望创建函数的地域,并单击【新建】,进入函数创建流程。
iii. 在“新建函数”页面,填写函数基本信息。如下图所示:
创建办法:选择利用【自定义创建】来新建函数。运行环境:选择【Node.js12.16】。提交方法:选择【本地上传zip包】。单击【完成】即可创建函数。
2. 在线依赖安装Node.js 运行时供应了在线依赖安装功能,启用了「在线安装依赖」后,在每次上传代码之后,云函数后台将检讨代码包根目录的 package.json
文件,并根据 package.json
中的依赖,考试测验利用 npm 工具安装依赖包。
以安装 lodash
库为例:
登录 云函数掌握台,单击左侧导航栏的【函数做事】。
选择左侧导航栏【函数做事】,在“函数做事”列表页面选择须要在线安装依赖的函数或单击【新建】创建一个函数。
选择【函数代码】页签,根据您的实际需求修正函数代码并添加 package.json
文件。package.json
内容以下文为例:
{ "dependencies": { "lodash": "4.17.15" }}
在 IDE 代码编辑窗口右上角中单击【】,不才拉列表中选择【自动安装依赖:关闭】以开启自动安装依赖,如下图所示:
单击【支配】,云函数后台会根据 package.json
自动安装依赖。
? 在线依赖安装功能目前仅支持Node.js
运行时,其他运行时敬请期待。
3. 利用 Serverless Web IDE
云函数在线编辑器 Serverless Web IDE 供应了终端功能,并在终端中内置了包管理工具 npm
。本文以在终端中安装 lodash
库为例:
登录 云函数掌握台,在左侧选择【函数做事】。
在函数列表中,单击函数名,进入该函数的详情页面。
在“函数管理”页面中,选择【函数代码】>【代码编辑】,查看并编辑函数。
在 IDE 顶部的菜单栏【终端】中选择【新终端】,打开终端窗口。
在终端中实行如下命令,安装依赖库 lodash
:
cd src # 依赖库须要安装在与函数入口文件同一级的目录下,即须要进入`src`目录后再实行依赖安装操作。npm install lodash
安装完成后,在 IDE 左侧的文件树中查看 package.json
和 node_modules
。
单击【支配】后依赖库即可与函数代码一同打包上传到云端。如下图所示:
02. Python 运行时Python 运行时支持以下两种依赖库安装方法:
1. 依赖库同代码一起打包上传通过依赖管理工具,例如 pip,在本地安装依赖后同函数代码一同打包上传。
打包时函数入口文件须要在zip
包的根目录下。如果打包全体文件夹并上传 zip
包,则会因解压后无法在根目录找到入口文件而导致函数创建失落败。由于运行环境不同,可自行将 pip
更换为 pip3
或 pip2
。函数运行系统为 CentOS 7,您须要在相同环境下进行安装。若环境不一致,则可能导致上传后运行时涌现无法找到依赖的缺点。您可参考 云函数容器镜像 进行依赖安装或利用在线 IDE 进行安装。若部分依赖涉及动态链接库,则需手动复制干系依赖包到依赖安装目录后再打包上传。详情请拜会 利用 Docker 安装依赖 或利用在线 IDE 进行安装。本文以安装 numpy
库为例:
在本地终端中实行 mkdir test-package
命令,创建一个目录用于存放函数代码和依赖库。
实行以下命令,在该目录下安装 numpy
依赖库。
cd test-packagepip install numpy -t .
在该目录下创建函数入口文件 index.py
并在代码中引用 numpy
库。
# -- coding: utf8 --import jsonimport numpydef main_handler(event, context): print("Received event: " + json.dumps(event, indent = 2)) print("Received context: " + str(context)) print("Hello world") return("Hello World")
将函数代码及依赖库一同压缩为 zip 包,在 云函数掌握台 中上传打包的 zip 包并创建一个新函数。操作步骤如下:
i. 登录 云函数掌握台,单击左侧导航栏的【函数做事】。
ii. 在主界面上方选择期望创建函数的地域,并单击【新建】,进入函数创建流程。
iii. 在“新建函数”页面,填写函数基本信息。如下图所示:
创建办法:选择利用【自定义创建】来新建函数。运行环境:选择【Python 3.6】。提交方法:选择【本地上传zip包】。
单击【完成】即可创建函数。
2. 利用 Serverless Web IDE云函数在线编辑器 Serverless Web IDE 供应了终端功能,并在终端中内置了包管理工具 pip
。本文以在终端中安装 numpy
库为例:
登录 云函数掌握台,在左侧选择【函数做事】。
在函数列表中,单击函数名,进入该函数的详情页面。
在“函数管理”页面中,选择【函数代码】>【代码编辑】,查看并编辑函数。
在 IDE 顶部的菜单栏【终端】中选择【新终端】,打开终端窗口。
在终端中实行如下命令,安装依赖库 numpy
:
cd src # 依赖库须要安装在与函数入口文件同一级的目录下,即须要进入`src`目录后再实行依赖安装操作。pip3 install numpy -t .
安装完成后,在 IDE 左侧的文件树中查看已安装的依赖库。
单击【支配】后依赖库即可与函数代码一同打包上传到云端。
您可以利用pip freeze > requirements.txt
天生本地环境下所有依赖的 requirements.txt
文件。在 IDE 的终端中实行 pip3 install -r requirements.txt -t .
即可根据 requirements.txt
的配置安装依赖包。One More Thing立即体验腾讯云 Serverless Demo,领取 Serverless 新用户礼包 腾讯云 Serverless 新手体验
欢迎访问:Serverless 中文网!