如何制作函数依赖包?
制作函数依赖包推荐在EulerOS环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。
如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
为Python函数制作依赖包
打包环境中的Python版本要和对应函数的运行时版本相同,如Python2.7建议使用2.7.12及以上版本,Python3.6建议使用3.6.3以上版本。
为Python 2.7安装PyMySQL依赖包,并指定此依赖包的安装路径为本地的/tmp/pymysql下,可以执行如下命令。
pip install PyMySQL --root /tmp/pymysql
执行成功后,执行以下命令。
cd /tmp/pymysql/
进入子目录直到site-packages路径下(一般路径为usr/lib64/python2.7/site-packages/),接下来执行以下命令。
zip -rq pymysql.zip *
所生成的包即为最终需要的依赖包。
如果需要安装存放在的本地wheel安装包,直接输入:
pip install piexif-1.1.0b0-py2.py3-none-any.whl --root /tmp/piexif //安装包名称以piexif-1.1.0b0-py2.py3-none-any.whl为例,请以实际安装包名称为准
为Nodejs函数制作依赖包
需要先保证环境中已经安装了对应版本的Nodejs。
为Nodejs 8.10安装MySQL依赖包,可以执行如下命令。
npm install mysql --save
可以看到当前目录下会生成一个node_modules文件夹。
如果需要安装多个依赖包,也可以先新建一个package.json文件,例如在package.json中填入如下内容后,执行如下命令。
{ "name": "test", "version": "1.0.0", "dependencies": { "redis": "~2.8.0", "mysql": "~2.17.1" } }
npm install --save
不要使用CNPM命令制作nodejs依赖包。
然后将node_modules打包成zip即可生成一个既包含MySQL也包含redis的依赖包。
Nodejs其他版本制作依赖包过程与上述相同。
为Java函数制作依赖包
使用Java编译型语言开发函数时,依赖包需要在本地编译。