Issue

When getting theses errors:

Jan 12 00:21:55 -- dockerd[904]: time="2018-01-12T00:21:55.328584974Z" level=warning msg="failed to retrieve docker-runc version: fork/exec /usr/bin/docker-runc: cannot allocate memory"
Jan 12 00:21:55 -- dockerd[904]: time="2018-01-12T00:21:55.329760875Z" level=warning msg="failed to retrieve docker-init version: fork/exec /usr/bin/docker-init: cannot allocate memory"

Docker daemon can't perform some actions because there is not enough memory available.

Root Cause

The root cause of theses error messages is that some process or container is taking a lot of memory.

Commands like docker top, top, or htop can help you to identify what is utilize the memory.

It is also recommended that you setup some sort of monitoring/metric system to follow the resources usage of your cluster.

Resolution

After identifying the root cause, a restart of the Docker daemon will correct the issue. Check also if there is some containers in Dead state. If so, try to delete them to restart with a clean state.