You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DDEV容器中设置时区?

解决DDEV容器中非root用户设置时区的问题

我太懂这种每次看日志还要算时差的痛苦了!因为DDEV容器里的默认用户确实没有root权限,没法用dpkg-reconfigure tzdata这种常规方法改时区,但咱们有几个不用root就能搞定的方案,分临时和永久两种场景:

临时生效(每次SSH进入容器后设置)

如果只是临时查看日志,不想改配置,直接在容器里设置TZ环境变量就行:

export TZ="Asia/Shanghai"  # 替换成你所在的时区,比如America/New_York、Europe/London

设置完之后,不管是用date命令看时间,还是查看Nginx、MariaDB的日志,时间戳都会自动转换成你指定的时区,不用再和GMT换算啦。不过这个设置只在当前SSH会话有效,下次进来得重新设。

永久生效(配置DDEV自动设置时区)

如果想一劳永逸,直接在DDEV的项目配置里添加环境变量,容器启动时自动加载时区设置:

1. Web/Nginx容器

编辑项目根目录下的.ddev/config.yaml,添加web_environment配置:

web_environment:
  - TZ=Asia/Shanghai  # 替换成你的时区

2. DB/MariaDB容器

同样在.ddev/config.yaml里添加db_environment配置:

db_environment:
  - TZ=Asia/Shanghai  # 替换成你的时区

保存配置后,执行ddev restart重启容器,之后不管是SSH进web还是db容器,默认时区都是你设置的那个,日志和时间相关的操作都会自动用这个时区,完全不用再手动换算啦。

小贴士:不知道自己的时区字符串?可以在本地机器上运行tzselect命令,跟着提示选择就能得到正确的时区值,比如Africa/Johannesburg或者Pacific/Auckland。

内容的提问来源于stack exchange,提问作者rfay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:37:03