首页 > 解决方案 > 在 docker 中创建 YAML 文件

问题描述

我有一个将 CSV 转换为 YAML 的 python 脚本。而这个 YAML 是用来再次使用的。当我在本地运行 docker 时,它会在文件tmp夹中创建一个文件并从中提取它。但是当它托管在 AWS(ECS) 上时。该tmp文件夹已创建,但 python 脚本无法在其中写入文件。它里面没有任何文件。它是空的。

码头工人文件:

FROM python:3.8
COPY . /app
WORKDIR /app

RUN pip3 install -r requirements.txt
RUN mkdir tmp
RUN chmod -R 777 /app/tmp
EXPOSE 8000
CMD ["uvicorn", "app.app:app", "--host", "0.0.0.0", "--port", "8000"]

Python脚本:

folder="tmp"
complete_loc=os.path.join(folder,filename+"_"+time_now+'.yaml')

out_file = open(complete_loc, "w")
out_file.write(yaml.dump(items, sort_keys=False))
out_file.close()

当我进入 docker in 时在本地运行 docker 时工作正常tmp,YAML 文件在那里,但在 AWS(ECS)上没有 YAML 文件。

标签: pythonamazon-web-servicesdockerdockerfile

解决方案


推荐阅读