详情页标题前

腾讯云云函数(SCF)依赖安装-云淘科技

详情页1

内置依赖

云函数 SCF 各个运行时已内置部分常用依赖库,您可前往各运行时代码开发中查询:Node.jsPythonPHPGolang

安装依赖库

您可以将 SCF 代码所有的依赖库保存在代码包中,并上传至云端以供 SCF 使用。SCF 已支持的运行时及使用方法如下:

Node.js 运行时

Node.js 运行时支持以下三种依赖库安装方法:依赖库同代码一起打包上传在线依赖安装使用依赖管理工具通过依赖管理工具,例如 npm,在本地安装依赖后同函数代码一同打包上传。注意打包时函数入口文件需要在 zip 包的根目录下。如果打包整个文件夹并上传 zip 包,则会因解压后无法在根目录找到入口文件而导致函数创建失败。本文以安装 lodash 库为例:1. 在本地终端中执行 mkdir test-package 命令,创建一个目录用于存放函数代码和依赖库。2. 执行以下命令,在该目录下安装 lodash 依赖库。

cd test-packagenpm install lodash

3. 在该目录下创建函数入口文件 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};

4. 将函数代码及依赖库一同压缩为 zip 包,在 Serverless 控制台 中上传打包的 zip 包并创建一个新函数。操作步骤如下:4.1 登录 Serverless 控制台,单击左侧导航栏的函数服务。4.2 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。4.3 在“新建函数”页面,填写函数基本信息。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技

创建方式:选择使用从头开始来新建函数。运行环境:选择Node.js12.16提交方法:选择本地上传zip包。4.4 单击完成即可创建函数。Node.js 运行时提供了在线依赖安装功能,可根据 package.json 中配置的依赖信息在线安装依赖包。详情请参见 在线依赖安装。云函数在线编辑器 Serverless Web IDE 提供了终端功能,并在终端中内置了包管理工具 npm注意Serverless Web IDE 对较新版本运行环境支持存在延时,如果对应运行环境下控制台未开放 Serverless Web IDE,请使用依赖库同代码一起打包上传或在线依赖安装方式进行依赖安装。本文以在终端中安装 lodash 库为例:1. 登录 Serverless 控制台,在左侧选择函数服务。2. 在函数列表中,单击函数名,进入该函数的详情页面。3. 在“函数管理”页面中,选择函数代码 > 代码编辑,查看并编辑函数。4. 在 IDE 顶部的菜单栏终端中选择新终端,打开终端窗口。5. 在终端中执行如下命令,安装依赖库 lodash

cd src  # 依赖库需要安装在与函数入口文件同一级的目录下,即需要进入`src`目录后再执行依赖安装操作。npm install lodash # 可通过终端查看 npm 版本

6. 安装完成后,在 IDE 左侧的文件树中查看 package.jsonnode_modules。7. 单击部署后依赖库即可与函数代码一同打包上传到云端。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技



Python 运行时

Python 运行时支持以下两种依赖库安装方法:依赖库同代码一起打包上传使用依赖管理工具通过依赖管理工具,例如 pip,在本地安装依赖后同函数代码一同打包上传。注意打包时函数入口文件需要在 zip 包的根目录下。如果打包整个文件夹并上传 zip 包,则会因解压后无法在根目录找到入口文件而导致函数创建失败。由于运行环境差异,请确认安装的依赖版本适配函数的运行环境。在线安装依赖时,建议使用 pip3pip36 等命令来指明 pip 等包管理工具的版本,详情请参见 WebIDE 常见命令。函数运行系统为 CentOS 7,您需要在相同环境下进行安装。若环境不一致,则可能导致上传后运行时出现无法找到依赖的错误。若部分依赖涉及动态链接库,例如 Python 3.6 安装 pandas,需手动复制相关依赖包到依赖安装目录后再打包上传。详情请参见 使用 Docker 安装依赖 或使用在线 IDE 进行安装。本文以安装 numpy 库为例:1. 在本地终端中执行 mkdir test-package 命令,创建一个目录用于存放函数代码和依赖库。2. 执行以下命令,在该目录下安装 numpy 依赖库。

cd test-packagepip install numpy -t . # 请关注所用 pip 版本是否适配函数运行环境,例如 python3.6 下请使用 pip36

3. 在该目录下创建函数入口文件 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")

4. 将函数代码及依赖库一同压缩为 zip 包,在 Serverless 控制台 中上传打包的 zip 包并创建一个新函数。操作步骤如下:4.1 登录 Serverless 控制台,单击左侧导航栏的函数服务。4.2 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。4.3 在“新建函数”页面,填写函数基本信息。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技

创建方式:选择使用从头开始来新建函数。运行环境:选择Python 3.6提交方法:选择本地上传zip包。4.4 单击完成即可创建函数。云函数在线编辑器 Serverless Web IDE 提供了终端功能,并在终端中内置了包管理工具 pip注意 Serverless Web IDE 对较新版本运行环境支持存在延时,如果对应运行环境下控制台未开放 Serverless Web IDE,请使用依赖库同代码一起打包上传或在线依赖安装方式进行依赖安装。本文以在终端中安装 numpy 库为例:1. 登录 Serverless 控制台,在左侧选择函数服务。2. 在函数列表中,单击函数名,进入该函数的详情页面。3. 在“函数管理”页面中,选择函数代码 > 代码编辑,查看并编辑函数。4. 在 IDE 顶部的菜单栏终端中选择新终端,打开终端窗口。5. 在终端中执行如下命令,安装依赖库 numpy

cd src  # 依赖库需要安装在与函数入口文件同一级的目录下,即需要进入`src`目录后再执行依赖安装操作。pip install numpy -t . # 可通过终端查看 pip 版本,确认是否适配函数运行环境

6. 安装完成后,在 IDE 左侧的文件树中查看已安装的依赖库。7. 单击部署后依赖库即可与函数代码一同打包上传到云端。注意您可以使用 pip freeze > requirements.txt 生成本地环境下所有依赖的 requirements.txt 文件。在 IDE 的终端中执行 pip install -r requirements.txt -t . 即可根据 requirements.txt 的配置安装依赖包。

PHP 运行时

注意SCF 支持的 PHP 版本为 PHP 8.0、PHP 7.4、PHP 7.2 和 PHP 5.6,PHP 不同的小版本号存在不兼容的可能,请核对版本号后进行依赖安装。安装自定义库安装自定义扩展通过依赖管理工具,例如 composer,在本地安装依赖后同函数代码一同打包上传。注意打包时函数入口文件需要在 zip 包的根目录下。如果打包整个文件夹并上传 zip 包,则会因解压后无法在根目录找到入口文件而导致函数创建失败。本文以 PHP7.2 安装 requests 库为例:1. 在本地终端中执行 mkdir test-package 命令,创建一个目录用于存放函数代码和依赖库。2.test-package下创建Composer.json并指定需要安装的依赖库及版本。

{"require": { "requests": ">=1.0" }}

3. 执行以下命令,在该目录下安装 requests 依赖库。

cd test-packagecomposer install

4. 在该目录下创建函数入口文件 index.php 并在代码中引用 requests 库。

 

5. 将函数代码及依赖库一同压缩为 zip 包,在 Serverless 控制台 中上传打包的 zip 包并创建一个新函数。操作步骤如下:5.1 登录 Serverless 控制台,单击左侧导航栏的函数服务。5.2 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。5.3 在“新建函数”页面,填写函数基本信息。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技

创建方式:选择使用从头开始来新建函数。运行环境:选择Php7.2提交方法:选择本地上传zip包。5.4 单击完成即可创建函数。在函数入口文件的同级目录下创建扩展文件夹 php_extension 并添加自定义扩展文件 .so 和配置文件 php.ini,同函数代码一起打包上传。本文以 PHP7.2 安装自定义扩展 swoole.so 为例。1. 在本地终端中执行 mkdir test-package 命令,创建一个目录用于存放函数代码和依赖库。2. 执行以下命令在 test-package 创建文件夹 php_extension,并将扩展对应的配置文件 php.ini 和扩展文件 .so 放在该目录下,目录结构如下:说明扩展文件夹 php_extension 和配置文件 php.ini 为固定命名,如使用其他命名可能导致扩展加载失败。扩展文件夹 php_extension 和配置文件 php.ini 以及自定义扩展 .so 文件需要具备可执行权限。

|____php_extension| |____php.ini| |____swoole.so|____index.php  

3. 自定义扩展支持从代码中或层中加载,如果扩展以层的形式上传,请确保上传到层的 zip 解压后的目录格式如下:

|____php_extension| |____swoole.so

4. php.ini 写法:扩展在代码目录下:

extension=/var/user/php_extension/swoole.so

扩展在层目录下:

extension=/opt/php_extension/swoole.so

5. 在该目录下创建函数入口文件 index.php,可通过extension_loaded( )函数检查扩展是否加载成功,加载成功返回true,否则返回false

 

6. 将函数代码及依赖库一同压缩为 zip 包,在 Serverless 控制台 中上传打包的 zip 包并创建一个新函数。操作步骤如下:
1. 登录 Serverless 控制台,单击左侧导航栏的函数服务。6.1 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。6.2 在“新建函数”页面,填写函数基本信息。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技

创建方式:选择使用从头开始来新建函数。运行环境:选择Php7.2提交方法:选择本地上传zip包。6.3 单击完成即可创建函数。

Java 运行时

通过依赖管理工具,例如 maven,在本地安装依赖后同函数代码一同打包上传。1. 在本地终端中执行 mkdir test-package 命令,创建一个目录用于存放函数代码和依赖库。2. 在该目录下创建 pom.xml,并在 pom.xml 中配置依赖信息。3. 在项目文件夹根目录下执行 mvn package 命令,编译输出如下:

[INFO] Scanning for projects...[INFO][INFO] ------------------------------------------------------------------------[INFO] Building java-example 1.0-SNAPSHOT[INFO] ------------------------------------------------------------------------[INFO]...[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 1.785 s[INFO] Finished at: 2017-08-25T10:53:54+08:00[INFO] Final Memory: 17M/214M[INFO] ------------------------------------------------------------------------

4. 将函数代码及依赖库一同压缩为 jar 包,在 Serverless 控制台 中上传打包的 jar 包并创建一个新函数。操作步骤如下:4.1 登录 Serverless 控制台,单击左侧导航栏的函数服务。4.2 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。4.3 在“新建函数”页面,填写函数基本信息。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技

创建方式:选择使用从头开始来新建函数。运行环境:选择Java8提交方法:选择本地上传zip包。4.4 单击完成即可创建函数。

Go 运行时

使用方法:打包时上传最终的二进制文件。Go 运行时的依赖库同代码一起编译后得到二进制文件,在 Serverless 控制台 中上传打包的二进制文件并创建一个新函数。操作步骤如下:1. 登录 Serverless 控制台,单击左侧导航栏的函数服务。2. 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。3. 在“新建函数”页面,填写函数基本信息。如下图所示:

腾讯云云函数(SCF)依赖安装-云淘科技

创建方式:选择使用从头开始来新建函数。运行环境:选择Go1提交方法:选择本地上传zip包。4. 单击完成即可创建函数。
官网1折活动,限时活动,即将结束,速速收藏
同尘科技腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/149570.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 阿里云日志服务SLSOpenAPI集成概览-云淘科技

    本文介绍使用日志服务OpenAPI的基本信息及注意事项。 更多关于使用阿里云OpenAPI的详细介绍,请参见阿里云OpenAPI。 基本信息 API版本说明 版本号 说明 2020-12-30 推荐使用 接入点说明 根据日志服务Project所在地域,选择对应的服务接入点,以获得最低延迟。 例如华北3(张家口)的日志服务接入地址为cn-zhangjiakou…

    阿里云日志服务SLS 2023年12月10日
  • 腾讯云轻量应用服务器使用自动化助手云小二

    操作场景 腾讯云自动化助手(TencentCloud Automation Tools,TAT)是轻量应用服务器的原生运维部署工具。您无需远程连接实例,自动化助手即可自动批量执行 Shell 命令,完成运行自动化运维脚本、轮询进程、安装/卸载软件、更新应用及安装补丁等任务。如需了解自动化助手的更多信息,请参见 腾讯云自动化助手。本文介绍如何通过轻量应用服务器…

    腾讯云 2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储使用永久密钥访问 COS

    背景介绍 通过 RESTful API 对对象存储(Cloud Object Storage,COS)可以发起 HTTP 匿名请求或 HTTP 签名请求。匿名请求一般用于需要公开访问的场景,例如托管静态网站;此外,绝大部分场景都需要通过签名请求完成。签名请求相比匿名请求,多携带了一个签名值,签名是基于密钥(SecretId/SecretKey)和请求信息加密…

    2023年12月9日
  • 腾讯云对象存储翻译任务接口

    简介 本文档提供关于翻译任务接口的 API 概览和 SDK 示例代码。 API 操作描述 提交翻译任务 提交翻译任务 查询任务结果 查询指定的任务 提交翻译任务 功能说明 提交一个翻译任务。 方法原型 public Guzzle\Service\Resource\Model createAiTranslationJobs(array $args = …

    腾讯云 2023年12月9日
  • 腾讯云云点播电商 App

    场景描述 电商 App 是为企业或个人提供网上交易洽谈的平台,商家为更好地展示商品,一般都会制作上传推广的商品图片、视频。消费者可以上传商品体验视频用于购物分享,或者商品评论,供其他消费者参考。该场景一般有以下核心诉求: 核心诉求 说明 多清晰度智能切换 播放时基于用户网络环境变化智能选择合适清晰度的视频,提供流畅的播放体验。 多种截图 平台需要提供给商家多…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。