Comment la sortie des stats docker se rapporte-t-elle à la sortie supérieure?

J'ai un process exécuté dans un conteneur Docker sous Linux, avec une limite de memory de 2 Go. (Le conteneur est démarré avec docker run --memory=2g .)

Voici ce que le top explique à ce sujet après qu'il a couru pendant un certain time.

  PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 9016 root 20 0 7342132 4.652g 4.224g S 100.0 7.4 18828:28 blah 

Voici la sortie des docker stats du docker stats :

 CONTAINER CPU % MEM USAGE/LIMIT MEM % NET I/O d7032e5928b6 100.02% 2.076 GB/2.147 GB 96.68% 345 MB/199.1 MB 

Puis, après le redémarrer, en top :

  PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 5653 root 20 0 2787800 1.328g 1.030g S 100.0 2.1 0:37.57 blah 

docker stats :

 CONTAINER CPU % MEM USAGE/LIMIT MEM % NET I/O 10cefdce241f 99.97% 320.4 MB/2.147 GB 14.92% 36.34 kB/22.48 kB 

Donc, cela correspond (très grossièrement) avec RESSHR , ce qui me paraît logique, mais le calcul équivalent pour la sortie du conteneur à long terme ne correspond pas de la même manière.

Qu'est ce que Docker count exactement ici? Puis-je le faire correspondre de quelque façon avec la sortie du top , ou un autre outil?

Les statistics de docker incluent également la memory cache de file. Il sera libéré sur request, mais il est compté comme utilisé.