繁体   English   中英

在不影响主机的情况下更改 Docker 容器中的系统日期时间

[英]Change system date time in Docker containers without impacting host

是否可以在不更改主机本身的情况下更改 Docker 容器中的系统时间?

我们正在使用 Docker 容器进行有时对时间敏感的测试。 我注意到对主机时间所做的任何更改都会立即反映到 Docker 容器中(这是有道理的,因为它们使用相同的内核)。 但是,我希望 Docker 为您提供一种方法来以某种方式覆盖容器的开始时间并从那里移动。

对于那些希望在 Docker 容器、 https://github.com/wolfcw/libfaketime中拥有不同日期时间的人来说,这只是一个跟进,应该可以完成这项工作。

简单的:

脚步:

  1. 首先查看 docker 容器的本地时间:

     [root@locdb oracle]# zdump /etc/localtime /etc/localtime Tue May 22 13:59:40 2018 UTC
  2. 检查时区,如下所示:

     [root@locdb oracle]# zdump /usr/share/zoneinfo/* | tail -10 /usr/share/zoneinfo/UTC Tue May 22 14:01:21 2018 UTC /usr/share/zoneinfo/Universal Tue May 22 14:01:21 2018 UTC /usr/share/zoneinfo/W-SU Tue May 22 17:01:21 2018 MSK /usr/share/zoneinfo/WET Tue May 22 15:01:21 2018 WEST /usr/share/zoneinfo/Zulu Tue May 22 14:01:21 2018 UTC /usr/share/zoneinfo/iso3166.tab Tue May 22 14:01:21 2018 /usr/share/zoneinfo/posix Tue May 22 14:01:21 2018 /usr/share/zoneinfo/posixrules Tue May 22 10:01:21 2018 EDT /usr/share/zoneinfo/right Tue May 22 14:01:21 2018 /usr/share/zoneinfo/zone.tab Tue May 22 14:01:21 2018
  3. 复制您需要的一个,例如:

     cp /usr/share/zoneinfo/UTC /etc/localtime

这里详细描述的,我遵循的解决方案是在 VM 上运行 docker 并通过vagrant自动化更改虚拟机时间、运行虚拟机和运行容器的整个过程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM