Ubuntu timedatectl fails in Docker container
docker, ntp, ubuntu, ubuntu-16.04
Solution
Time drift is caused by the underlying host OS which, for Docker, isn't macOS but actually the Linux VM running on macOS. It's related to macOS sleep times (e.g. when you close the MacBook lid). Apparently it has recently been fixed and should be available soon: https://github.com/docker/for-mac/issues/17#issuecomment-300734810
Problem
I've got Ubuntu 16.04 LTS running in a Docker container (hosted on macOS). The date/time is off by about four days. ``` $ cat /etc/*-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS" $ date Sun May 7 05:57:21 UTC 2017 ``` Effective date is 11 May 2017 06:17:13 UTC. I wanted to fix this (checking this and this) but I can't even run `timedatectl`: ``` $ timedatectl status Failed to create bus connection: No such file or directory ``` How do I fix this?