首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将文件从AWS EC2传输到本地(windows)?

如何将文件从AWS EC2传输到本地(windows)?
EN

Stack Overflow用户
提问于 2020-07-03 22:19:16
回答 1查看 136关注 0票数 0

我试图在Python函数上使用Sklearn。因为Sklearn不是本地的,所以我需要在一个层中上传库及其依赖项。其中一个依赖项Numpy比我上传的要大,但幸运的是,AWS已经提供了一个Scipy,Numpy层(AWSLambdaPython38-SciPy1x),所以耶!因此,我认为我需要用剩下的库创建一个层,并在lambda函数中使用这两个层。因此,我在我的窗口上创建了一个包含库(joblib、线程池with、scikit-learn和sklearn)的图层,并将其上传并调用该函数,但该函数没有工作。谷歌母亲告诉我,这是由于兼容性问题(Windows)。

代码语言:javascript
运行
复制
{
  "errorMessage": "Unable to import module 'lambda_function': cannot import name 'WinDLL' from 'ctypes' (/var/lang/lib/python3.8/ctypes/__init__.py)",
  "errorType": "Runtime.ImportModuleError"
}

最后,我决定使用一个Linux实例,安装Python,其余的库,然后上传Lambda层。我得到了一个"Amazon 2018.03.0 (HVM),SSD卷类型“,并完成了下面描述的步骤(请对Linux newbs友好一点):

在我的windows cmd

代码语言:javascript
运行
复制
cd C:/path_to_aws.pem
ssh -i "file.pem" ec2-user@ec2-x.region.compute.amazonaws.com

sudo yum update
sudo su
yum install openssl-devel
yum install libffi-devel
yum groupinstall "Development Tools"
wget https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tgz
tar -xf Python-3.8.3.tgz
cd Python-3.8.3
sudo su
./configure --enable-optimizations
nproc
make -j 1
sudo make altinstall
exit
curl -O https://bootstrap.pypa.io/get-pip.py
python3.8 get-pip.py
sudo su
python3.8 -m venv biblio/env
source ~/biblio/env/bin/activate
pip install pip --upgrade
pip install joblib
pip install threadpoolctl
pip install scikit-learn
pip install sklearn
zip -r python38_lib.zip /biblio

问题:现在我已经在Linux机器上安装了库,但是如何从本地环境将它送到我的计算机上呢?如果它在实例(外部env)上,我知道如何获得它:

代码语言:javascript
运行
复制
scp -i " file.pem " ec2-user@ec2-x.region.compute.amazonaws.com:/path/file.zip C:/

如果你能帮我解决最初的问题,那就是,在Lambda上运行Sklearn,有一个更短、更无痛的解决方案:<3!否则,你能帮我把library.zip文件送到我的窗口吗?

谢谢你的好意

1-1- .py

2平方https://aws.amazon.com/pt/premiumsupport/knowledge-center/ec2-linux-python3-boto3/

3 https://medium.com/@dearsikandarkhan/files-copying-between-aws-ec2-and-local-d07ed205eefa

EN

回答 1

Stack Overflow用户

发布于 2020-07-13 21:52:08

TL博士,我已经为你们建立了这一层。您可以通过gdrive 链接下载它。注:包括NumPy .

使用无服务器框架构建lambda层更容易。

代码语言:javascript
运行
复制
# serverless.yml

service: serverless-example

plugins:
  - serverless-python-requirements

custom:
  pythonRequirements:
    dockerizePip: non-linux
    layer: true

provider:
  name: aws
  runtime: python3.8
  stage: dev
  region: us-east-1
  profile: dummy

functions:
  dummy:
    handler: dummy.handler
代码语言:javascript
运行
复制
# requirements.txt

joblib==0.16.0
threadpoolctl==2.1.0
scikit-learn==0.23.1

只需执行sls package -p pkg,那么名为pythonRequirements.zip的层zip将位于pkg目录中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62723297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档