我正在尝试运行我的python脚本,该脚本使用django中定义的一些模型,然后在docker容器内。 我使用以下命令: 但我不断收到此错误: 基本上,我的代码每一行都会出现缩进错误。 有任何想法吗? ...
提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
我有一个生成csv作为输出的python脚本。 我正在Docker容器中运行脚本。 脚本完成后,docker容器立即终止,因此我无法复制文件。 从容器中获取csv的最佳方法是什么?
您可以使用已安装的卷启动容器,然后在容器退出时文件将位于文件系统上:
$ docker run -v $PWD/output:/usr/my/workspace mycontainer mycmd
mycmd
将CSV文件输出到/usr/my/workspace
。 您的文件将位于主机文件系统上的output/
文件夹中。
如果您使用例行解释性语言编写脚本,并且其关键活动涉及读取或写入本地文件,则运行该脚本的最佳方法完全不在Docker中。
您可以使用普通的Python打包工具来声明脚本的依赖项( setup.py
或requirements.txt
文件)。 虽然您需要进行一些设置才能运行脚本,但这是非常常规的:
python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txt
./the_script.py
与基于Docker的解决方案相比,这实际上没有比典型的docker run
调用更复杂。 与Docker不同,大多数Linux和MacOS系统都预先安装了Python; 而且您无需是root用户或具有与root用户等效的权限即可运行该脚本。 您也不必担心与正在运行的容器共享文件内容的机制,也不必担心随之而来的不可避免的文件系统权限问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.