首页 > 解决方案 > 如何从在 docker 容器中运行的 python 脚本(使用 docker sdk)创建图像?

问题描述

我有两个 dockerfile,测试和结果。在测试容器中运行的 python 脚本必须使用 docker sdk 为结果创建图像。我将 dockerfiles 和用于测试的 python 脚本都复制到了测试的工作目录中。但是,当我在测试脚本中出现错误时说没有这样的文件或目录。

测试的 Dockerfile:

FROM python:3.7.2-slim
WORKDIR /test
COPY . /test
RUN pip install docker 
ENV PYTHONPATH="$PYTHONPATH:/test"
CMD ["python", "test.py"]

测试.py:

// dockerfile of result is named result
import docker
client = docker.from_env()
image = client.images.build(path="/test", dockerfile='result') 
container = client.containers.run(image)

标签: pythondockerdockerfile

解决方案


当你这样做

COPY . /test

您复制 docker-compose.yml 文件夹的所有内容。

但是当你在 test.py 中时,你可能在另一个文件夹中。因此,您需要将文件夹级别备份到访问/测试。


推荐阅读