当我运行docker容器时,它是否使用主机/dev/random
/dev/urandom
并使用主机的时间?
我计划使用haveged
和ntp
,这样就足以在主机上安装它们了,还是我需要以某种方式将它们安装/链接到容器?
答案 0 :(得分:1)
Docker与docker主机共享内核,因此内核提供的/ dev / random和time等设备将在容器外部处理。实际上,如果您尝试更改容器内部的时间,您会发现默认情况下docker已删除此功能(CAP_SYS_TIME)。
root@66fd0ad0324e:/# date 06061209
date: cannot set date: Operation not permitted
有一点需要注意,如果docker在VM上运行,就像在MacOS和Windows等环境中运行一样,VM正在运行内核,因此您需要确保其在该VM中的时间是正确的。我相信你可以使用运行ntp守护进程的特权容器来做到这一点。