Docker ntpdate Permition error
After building a Dockerfile, I run it. I figure out that there is something wrong with local time.
So I start to install ntpdate but it doesn't work at all. The clock of docker must be asyncronized with
host clock, it can not be changed by itself. The file /etc/localtime is used for setting the system clock
and once it is changed, the time in system will be changed immediately.
Actually, /etc/localtime is a symlink to /usr/share/zoneinfo/localtime in some Linux/Unix systems.
We can can change /etc/lcoaltime into any one of these timezones as following:
1 2 3 4 5 6 7 8 9 | root@ubuntu: /usr/share/zoneinfo # ls Africa Canada EST GMT0 Iran MET Poland ROK WET America CET EST5EDT GMT-0 iso3166.tab Mexico Portugal Singapore W-SU Antarctica Chile Etc GMT+0 Israel MST posix SystemV zone.tab Arctic CST6CDT Europe Greenwich Jamaica MST7MDT posixrules Turkey Zulu Asia Cuba Factory Hongkong Japan Navajo PRC UCT Atlantic EET GB HST Kwajalein NZ PST8PDT Universal Australia Egypt GB-Eire Iceland Libya NZ-CHAT right US Brazil Eire GMT Indian localtime Pacific ROC UTC |
Solution:
1 2 3 4 5 | root@6fc515dfb754:~ # ntpdate us.pool.ntp.org 3 Nov 09:30:06 ntpdate[966]: Can't adjust the time of day: Operation not permitted cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime |