首页 > 解决方案 > docker 不创建文件

问题描述

我是 Docker 新手。

我想将 cv2 上传到 AWS lambda 函数,所以我关注了https://itnext.io/create-a-highly-scalable-image-processing-service-on-aws-lambda-and-api-gateway-in -10 分钟 7cbb2893a479

我正在尝试通过运行为 OpenCV 生成一个支持 Lambda 的 Python 包

docker run --rm -v $(pwd):/package tiivik/lambdazipper opencv-python

也就是说,我假设应该在当前工作目录中创建opencv-python.zip 。这样我就可以将它上传到 lambda 层。

但是,当我运行命令时,会发生下载/拉取,但它不会创建任何东西。我尝试过其他类似的教程,但它们都没有创建任何东西。

这有什么问题?

我有 Windows 10 专业版。所以,我有 Docker Desktop,我正在使用 WSL 2

标签: amazon-web-servicesdockeropencvaws-lambda

解决方案


首先检查$(pwd)当前 Windows 10 shell 会话中的 docker 命令是否正确解释。

如此处所见,从常规 CMD 会话中,改为尝试:

docker run --rm -v  %cd%:/package tiivik/lambdazipper opencv-python

在 WSL2 bash 会话中,也可以尝试

docker run --rm -v  $PWD:/package tiivik/lambdazipper opencv-python

尽管阅读了此线程:如“为 Windows 和 WSL 设置 Docker 以完美工作”中所述,您可能需要修改您的wsl.conf

sudo nano /etc/wsl.conf

# Now make it look like this and save the file when you're done:
[automount]
root = /
options = "metadata"

这是:

优点:您不必在 Windows 上安装 python3(package.sh脚本需要)。所有执行环境及其依赖项都已安装在映像中。tiivik/lambdazipper


推荐阅读