数日後、dockerはエラーで失敗します。
docker[8927]: level=error msg="Error running exec in container: execcantrun: Cannot run exec command 34a26 in container 4972e576: [8] System error: fork/exec /proc/self/exe: cannot allocate memory\n"
Docker 1.9.1(アップグレードできない)
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 34763 9.3 0.8 10680004 535208 ? Ssl Mar13 1334:17 /usr/bin/docker daemon -H fd:// --insecure-registry=0.0.0.0/0 --log-level=warn --ip-forward=false
VSZがほぼ10Gであることを見ました。
自由-m
total used free shared buffers cached
Mem: 63012 60128 2883 816 1 6775
-/+ buffers/cache: 53351 9660
Swap: 8191 7581 610
Dockerサービスを再起動すると、数日後に再び表示されるまで問題が消えます。
Dockerが再起動した後、VSZは約2Gです。
root 27144 2.4 0.0 1786272 44432 ? Ssl 17:44 4:47 /usr/bin/docker daemon -H fd:// --insecure-registry=0.0.0.0/0 --log-level=warn --ip-forward=false
誰でもそれを見たか、提案がありますか?
答え1
この質問には以下が含まれます。https://github.com/docker/docker/issues/8539docker 1.10以降で修正されました。コンテナのSTDOUTをフラッシュするために特別に使用されるバッファに問題を引き起こすDockerログドライバには、いくつかの問題があります。