在无服务器上提供更多服务。
serveRmore的Python项目详细描述
服务器更多
以帮助在无服务器云主机上更容易访问r,从aws lambda开始。 python包索引发布:https://pypi.org/project/serveRmore/
要求
有关必要的手动配置,请参阅我们的LAPTOP.md Guide。
有关更多信息,请参阅您的云平台:
要安装最新的软件包:
python3 -m pip install serveRmore
快速启动
- 通过键入“srm”或“srm帮助”启动配置文件。这些命令可用于感知。
srm help
srm version
srm status
- 更新主目录中的配置文件。至少,您需要:
- 您自己的lambda执行角色'arn'值。
- 一个S3存储桶和一个S3存储桶密钥(文件夹)。
- lambda函数名
创建一个新的lambda.r脚本并在r中创建一个“handler”方法。在handler方法中插入“hello world”或自定义代码。
创建一个新的package.r脚本,该脚本将压缩lambda.r并放在aws s3存储桶和密钥上。
要将zip文件直接部署到lambda,请在此处尝试我们的新工作流。
srm lambda init
srm lambda create
srm lambda update
srm lambda invoke
srm lambda destroy
注意:“init”将在配置中建立r runtime arn值。创建“将建立一个全新的lambda函数,如果它不存在,并发布您的zip文件。”如果你的lambda函数已经存在,更新将重新发布你的zip文件。
自定义R运行时层
要使用预先构建的其他r自定义运行时层,或帮助您构建自己的运行时层,请参阅本指南:R Runtime Custom Layers
我们有一种在lambda上部署的老方法,目前仍然支持这种方法。您可以在这里了解更多信息:R Environment in Python Runtime
路线图
0.1.0版
- 在自定义图层生成上创建更多的自动化
- 修改servermore.yaml配置文件以获取新配置
- 启动临时EC2虚拟机
- 从bakdata中下拉github repo
- 从配置文件引入自定义图层设置
- 生成并发布新层
- 将新层的arn保存到config
- 终止虚拟机
- 在python运行时工作流上删除旧的ec2虚拟机
更改日志
v0.0.2-通过aws的新自定义层特性,引入了直接在lambda上运行r,这要感谢@bakdata。
- 几个新的命令,用于启动r运行时版本、创建新函数、更新它们和销毁它们。
- 关于如何构建自定义r层的新文档。
v0.0.1-初始版本
- automated使用lambda和r的基因组学分析指南引入了一个自动构建过程,该过程创建一个临时的aws ec2虚拟机,安装带有cran和自定义r包的r环境,并将它们包装到lambda包中。还需要手动开发handler.py文件,该文件通过r2py调用r环境和r方法。
- 提供了在handler.py更改后迭代和重新打包的简单方法。
贡献
请参阅我们的指南了解更多信息。CONTRIBUTING.md