gpt4 book ai didi

python - 将文件从 Python 脚本保存到 Docker 容器

转载 作者:IT老高 更新时间:2023-10-28 21:39:17 25 4
gpt4 key购买 nike

我有一个简单的 Python 脚本,在 Docker 容器内,它:

-调用外部 API

-从 API 返回一个许可文件

我希望能够将返回的许可证文件保存到 docker 容器内的目录中。

这就是我所做的:

r = requests.post("http://api/endpoint", headers=headers, data=data, auth=("", "")
f = open('test.lic', 'w+')
f.write(r.content)
f.close()

我的理解是,如果一个test.lic文件不存在,这将创建一个文件,或者打开现有的test.lic文件,并写入内容test.lic 的请求对象。但是,这是行不通的。没有文件被保存到 Docker 容器内的我的目录中。如果我从 python shell 运行这些行,它可以工作,所以我猜它与 Docker 容器内部有关。

最佳答案

可能是文件正在保存,但它位于容器的工作目录中。

docker docs说:

The default working directory for running binaries within a container is the root directory (/), but the developer can set a different default with the Dockerfile WORKDIR command.

所以文件可能会在你的容器的根目录 / 中结束。

您可以将 os.getcwd()print 添加到您的脚本中(如果您能够看到输出...您可能需要使用docker logs 命令)来验证这一点。无论哪种方式,该文件都可能位于 os.getcwd() 返回的位置。

关于python - 将文件从 Python 脚本保存到 Docker 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31485268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com