nat*_*002 17 python macos docker docker-machine
在docker容器中运行python脚本,一切似乎运行顺畅,看到一些STDOUT消息,大约5分钟我得到一条Killed消息,没有进一步的解释,过程停止.查询数据库可能是磁盘空间问题,可能是OOM问题.我不确定,但我不知道在哪里可以找到关于这个kill消息的日志,所以我可以找到这个问题的根源.这些日志有哪些想法?
在Mac OSX上运行docker-machine.
这真的是所有信息都说的!
root@c7b800e0f276:/opt/mymodule# python
Python 2.7.13 (default, May 1 2017, 22:44:36)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from mymodule import model
>>> model.run('2017-04-01')
INFO:Deleting from input table.
INFO:Inserting into input table.
INFO:Querying input table for chunk.
Killed
root@c7b800e0f276:/opt/mymodule# exit
Run Code Online (Sandbox Code Playgroud)
谢谢!
Eug*_*ota 28
默认情况下,Docker for Mac将可用资源限制为2GB!这对我运行的应用来说太低了.我正在尝试的解决方案是将内存限制提高到8GB.
(我有类似的问题,虽然使用JVM应用程序,而不是Python,并通过谷歌搜索到达此处.从@sergiu删除的答案我能够找出问题.)

高级设置是:
CPU:默认情况下,Docker for Mac设置为使用主机上可用处理器数量的一半.要提高处理能力,请将其设置为更高的数字; 减少,减少数量.
内存:默认情况下,Docker for Mac设置为使用
2GB运行时内存,从Mac上的总可用内存中分配.要增加RAM,请将其设置为更高的数字; 减少它,降低数量.交换:根据需要配置交换文件大小.默认值为1 GB.
使用Docker for Mac,您可以通过以下方式进入主机VM命名空间:
docker run --net=host --ipc=host --uts=host --pid=host -it --security-opt=seccomp=unconfined --privileged --rm -v /:/host alpine /bin/sh
Run Code Online (Sandbox Code Playgroud)
然后运行chroot /host以将root更改为主机挂载.现在,您可以使用实用程序dmesg来检查任何OOM消息(如您的问题建议的评论).
| 归档时间: |
|
| 查看次数: |
6953 次 |
| 最近记录: |