HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

Serverless 实践系列(二):为 Python 云函数打包依赖

  • 2019-08-16
  • 本文字数:764 字

    阅读完需:约 3 分钟

Serverless实践系列(二):为Python云函数打包依赖

在使用无服务器云函数 SCF 时通常会遇到导入第三方库的问题,很多开发者比较头疼是:应该如何打包进去?这里,推荐几个不错的方法。

方法 1: 官方方案

官方方案地址:


https://cloud.tencent.com/document/product/583/9702


在这个方案中,基本上有以下几个步骤:


  • 获得依赖列表

  • 安装依赖到目录

  • 生成 zip

  • 测试


以安装 Pillow 为例: 安装 pipreqs,可以使用 pip install pipreqs,这个是一个可以获取本文项目中依赖的工具



建立文件夹,并且建立测试文件:



文件内容:


import PIL
复制代码


获得需要依赖,生成文件:



文件内容:



安装 requirements:


sudo pip3 install -r requirements.txt -t /home/dfounderliu/code/pillowtest
复制代码



查看结果与本地测试:



压缩文档:



云函数中测试:



提示错误:



按照云函数要求写 main_handler:



至此,通过官方提供的方法安装完成。

方法 2: Pycharm 快速安装

首先,新建项目 pillowtest,这里要选择 virtualenv



然后,建立文件index.py



安装 Pillow:




安装完成之后,可以看到:



此时我们将安装过来的文档移动到 pillowtest 的目录下,然后将非 venv 目录进行压缩:




此时,我们将结果上传到云函数,并适当修改index.py



方法 3: 自行复制法

这种方法是指,我们用了某个包,可以自己下载源码并且将其复制到目录下,具体方法可以参考上一篇实战:


Serverless实践系列(一):如何通过SCF与自然语言处理为网站赋能


作者介绍:


刘宇,腾讯云 Serverless 团队后台研发工程师。毕业于浙江大学,先后参与腾讯云云函数产品研发、自动扩缩容、CLI 等模块建设以及社区相关工作。本文转载自微信公众号 ServerlessCloudNative(ID:ServerlessGo)


相关文章:


《Serverless 实践系列(一):如何通过 SCF 与自然语言处理为网站赋能》


《Serverless 实践系列(三):突破传统 OJ 瓶颈,“判题姬”接入云函数》


《Serverless 实践系列(四):网站监控脚本的实现》


2019-08-16 15:3514085

评论

发布
暂无评论
发现更多内容

差点跳起来了!全靠这份“Java核心知识笔记”我成功拿到美团offer

比伯

Java 程序员 架构 计算机 编写

模糊匹配、相似度查询怎么破?看PG亿级检索毫秒响应

PostgreSQLChina

数据库 postgresql 开源

养猫了!

小林coding

生活

快递员出售用户信息被判刑:如何防止快递行业信息泄露

石头IT视角

Windows安装MySQL5.7教程

Simon

MySQL windows 安装 七日更

AWS云上安全最佳实践

雪雷

安全 AWS 云安全

软件测试之登录测试详解

测试人生路

软件测试

Gridea+GitHub搭建个人博客

Simon

GitHub Pages 博客 七日更

惊艳!阿里自爆用480页讲清楚了44种微服务架构设计模式

996小迁

程序员 面试 微服务 设计模式 架构设计

提升awk技能的两个教程【译】

程序员架构进阶

Linux Shell awk

突破程序员基本功的16课

田维常

程序员

我敢说这是全网最详细的基础讲解,附源码实例,没人学不明白

小Q

Java 学习 架构 面试 基础

dForce挖矿APP系统开发|dForce挖矿软件开发

系统开发

研发团队如何实现无缝协作?

万事ONES

研发管理 团队协作 研发效能 研发工具

Polkadot系列(三)——如何实现共享安全性

QTech

区块链 polkadot 跨链

合成游戏app系统开发软件技术

盘点 2020 | 鲜衣怒马少年时,不负韶华行且知!

程序员的时光

程序员 成长 编程之路 计算机 盘点2020

堪称完美!阿里架构师用60个实战案例讲明白了Spring Boot

Java架构追梦

Java 架构 面试 微服务 springboot

波场链智能合约系统定制开发

合约跟单系统开发软件定制

成为分布式系统架构师,都要学哪些东西?该怎么学?

四猿外

Java 程序员 分布式 分布式系统 架构师

数字货币交易所系统开发功能方案

为什么现代系统需要一个新的编程模型?

华为云开发者联盟

编程 模型 语言

Spring 源码学习 09:refresh 大概流程

程序员小航

spring 源码 源码阅读

OLAP计算引擎怎么选?

数据社

OLAP 七日更

震闻:2021年 微服务 即将被这个取代了!!

Java架构师迁哥

向我看齐!京东智联云成 2020 TOP100 Summit“技术标兵”

京东科技开发者

DevOps 云原生 数字化

四币连发交易所系统开发技术

iOS面试基础知识 (四)

iOSer

ios 面试 底层知识

一场由fork引发的超时,让我们重新探讨了Redis的抖动问题

华为云开发者联盟

redis fork 时延抖动

OTC场外交易系统开发软件定制

Serverless实践系列(二):为Python云函数打包依赖_语言 & 开发_刘宇_InfoQ精选文章