Mar*_*oma 5 cron systemtime docker
我在 Docker 容器中有几个问题:
ubuntu:16.04)在启动时是否与主机具有相同的时间?对于(1),看起来好像是这样($是主机,#是容器):
$ docker run -it ubuntu:18.04 bash
# date --iso-8601=s -u
2018-09-11T18:47:04+00:00
$ date --iso-8601=s -u
2018-09-11T18:47:10+00:00
Run Code Online (Sandbox Code Playgroud)
对于 (3),我尝试使用 更改我的本地时间sudo date 080622432018,但我不确定它是否生效。我不确定命令是否错误,或者是否只是其他系统将时间快速重置为正确的时间。
如果您在 linux 主机上运行以下命令:
cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc
Run Code Online (Sandbox Code Playgroud)
您将看到您的内核正在使用(可能和我的一样)TSC 什么是时间戳计数器(https://en.wikipedia.org/wiki/Time_Stamp_Counter)-基于 CPU 的准确时间测量(此处链接到内核参数https://en.wikipedia.org/wiki/Time_Stamp_Counter) /github.com/torvalds/linux/blob/master/Documentation/admin-guide/kernel-parameters.txt#L523)。作为比较,当您在基于 KVM 的 VM 内发出该命令时,您会看到 kvm-clock 有助于处理与时间和完整操作系统虚拟化相关的问题。
由于 docker 容器是轻量级虚拟化隔离,当您在 docker 容器中运行相同的命令时,您将看到相同的值 - 这意味着容器与主机共享时间。这也意味着容器不能在没有适当权限的情况下更改时间,因为它会更改主机和所有其他容器的时间 - 该权限是 SYS_TIME ( https://docs.docker.com/engine/reference/run/#runtime-privilege-and -linux-功能)
回答您的问题:
| 归档时间: |
|
| 查看次数: |
4630 次 |
| 最近记录: |