通过 python 在 docker 容器外写入文件

Write files outside of a docker container via python

有没有办法将文件(在本例中为 json)写入 docker 容器外部? 我说的是最简单的方式,例如:

data = {"id":"1","name":"sample"}
with open('name.json','w') as fp:
   json.dump(data,fp,indent=4)

有没有办法在 docker 容器外写入?还是在特定的地方? 或者将其保存在容器将 运行 所在的系统上的特定路径上?

让我们假设

  • 您的 python 脚本在 docker 容器中的位置 /app/myscript.py
  • 您的 python 脚本写入文件的位置是 /home/jon/result_files/
  • 您的 docker 图片名为 mypyimg

然后您可以在启动容器时使用 volumes 挂载主机位置:

docker run -d \
  --name my_py_container \
  -v /home/jon/result_files:/app \
  mypyimg