CoreOS Single Container High Memory Usage

So I have a simple Go web app I deployed as a Docker container. I am running a t2.small instance on AWS with CoreOS AMI.

The container is very small, only using about 10MB of memory according to docker stat:

  • Constraint in docker-compose gives container not found error in ucp
  • Is it possible to use a “blank” docker container without any install on it?
  • How to send signal to program run in a docker container?
  • How to install new packages into non-root Docker Container?
  • Docker remove not working
  • Kubernetes NodePort custom port
  • CONTAINER           CPU %               MEM USAGE / LIMIT     MEM %               NET I/O               BLOCK I/O
    8e230506e99a        0.00%               11.11 MB / 2.101 GB   0.53%               49.01 MB / 16.39 MB   1.622 MB / 0 B

    However the CoreOS instance seems to be using a lot of memory:

    $ free
                 total       used       free     shared    buffers     cached
    Mem:       2051772    1686012     365760      25388     253096    1031836
    -/+ buffers/cache:     401080    1650692
    Swap:            0          0          0

    As you can see it’s using almost 1.7GB of memory of its 2GB total memory with only about 300MB left. And this seems to be slowly getting worse.

    I’ve had the instance running for about 3 days now and the free memory started at around 400MB after fresh launch and starting a single Docker container.

    Is this something I should worry about? Or is CoreOS supposed to use so so much memory when my little Go app in a container only uses tiny 10MB.

  • Increasing disk space for Agents/Worker nodes in Azure Container Service
  • Docker interrupt proxy internet connection
  • Not able to install packages in docker containers
  • ansible - define var's value depending on another variable
  • Container command could not be invoked
  • composer install fails when unable to see mysql database
  • One Solution collect form web for “CoreOS Single Container High Memory Usage”

    Because a lot of that memory usage is buffers and cache. The better indicator is your application from Docker (which is likely close if it is a small Go app) and the OS total usage minux buffers and cache on the second line (which is closer to 400 MB used).

    See for a decent explanation.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.