小编Lui*_*ock的帖子

如何让 NaCL 在 AWS Lambda 正常工作?

我正在AWS lambda 上使用Pychromeless 存储库并取得成功。

\n\n

现在我需要使用 NaCL 依赖项来解密字符串,但我得到了

\n\n

Unable to import module \'lambda_function\': /var/task/lib/nacl/_sodium.abi3.so

\n\n

与补充

\n\n

invalid ELF header\n\xc2\xa0

\n\n

在 AWS Lambda 上运行该函数时。

\n\n

我知道这是一个与 AWS Lambda 环境相关的特定问题,因为我可以在 Mac 上的 docker 中运行该函数。

\n\n

这是我的requirements.txt 文件

\n\n
boto3==1.6.18\nbotocore==1.9.18\nselenium==2.53.6\nchromedriver-install==1.0.3\nbeautifulsoup4==4.6.1\ncertifi==2018.11.29\nchardet==3.0.4\neditdistance==0.5.3\nfuture==0.17.1\nidna==2.7\npython-telegram-bot==10.1.0\nrequests==2.19.1\nsoupsieve==1.7.3\nurllib3==1.23\nPyNaCl==1.3.0\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是 dockerfile

\n\n
FROM lambci/lambda:python3.6\nMAINTAINER tech@21buttons.com\n\nUSER root\n\nENV APP_DIR /var/task\n\nWORKDIR $APP_DIR\n\nCOPY requirements.txt .\nCOPY bin ./bin\nCOPY lib ./lib\n\nRUN mkdir -p $APP_DIR/lib\nRUN pip3 install -r requirements.txt -t /var/task/lib\n
Run Code Online (Sandbox Code Playgroud)\n\n

和生成文件:

\n\n
clean:\n    rm -rf build build.zip\n    rm -rf __pycache__\n\nfetch-dependencies:\n    mkdir …
Run Code Online (Sandbox Code Playgroud)

python python-3.x docker nacl-cryptography aws-lambda

5
推荐指数
1
解决办法
2410
查看次数

如何让 Pycrypto 在 Docker 上正常工作?

我正在AWS lambda 上使用Pychromeless 存储库并取得成功。

\n\n

但现在我需要使用 pycrypto 依赖项,但我得到了

\n\n

configure: error: no acceptable C compiler found in $PATH\n\xc2\xa0\n运行时make docker-build\n(放入文件后pycrypto==2.6.1requirements.txt

\n\n

这个线程,有人提到了同样的问题:\n\xc2\xa0

\n\n

“gcc 编译器不在您的 $PATH 中。这意味着您没有安装 gcc,或者它不在您的 $PATH 变量中”。

\n\n

所以尝试放置apt-get install build-essential在 Dockerfile 中,但我得到了

\n\n

/bin/sh: apt-get: command not found

\n\n

然后,我尝试使用\xc2\xa0yum install gcc

\n\n

只为得到

\n\n

The command \'/bin/sh -c yum install gcc\' returned a non-zero code: 1

\n\n

Docker-lambda [信息页面](https://hub.docker.com/r/lambci/lambda/)说:

\n\n
This …
Run Code Online (Sandbox Code Playgroud)

pycrypto python-3.x docker dockerfile

3
推荐指数
1
解决办法
1652
查看次数