跳至正文
Home » 在 Docker 中使用 TZ 时区规范:说明和可用时区

在 Docker 中使用 TZ 时区规范:说明和可用时区

Docker 是一种功能强大的工具,用于将应用程序隔离在容器中并独立于平台运行。使用 Docker 时,正确配置时区通常很重要,尤其是对于依赖时间的进程。在本文中,您将了解如何在 Docker 中使用 TZ 环境变量、它的作用以及哪些时区可用。

什么是 TC 环境变量?

TZ 环境变量允许你为 Docker 容器设置时区。默认情况下,Docker 容器采用主机系统的时区。不过,如果你想确保你的容器使用特定的时区,可以使用 TZ 变量来控制。

为什么时区配置很重要?

正确的时区对以下方面至关重要

  • 时间戳:生成时间戳(如在日志或数据库条目中)的应用程序必须在正确的时区生成时间戳。
  • 计划任务:Cron 作业或其他基于时间的任务必须在正确的本地时间执行。
  • 全球应用程序:如果不同时区的用户都在使用您的应用程序,那么正确本地化时间就非常重要。

如何在 Docker 中使用 TZ 环境变量

要指定 Docker 容器的时区,可在启动容器时设置 TZ 环境变量。具体方法是使用-e(或--env )开关,然后输入所需的时区说明。

示例:使用定义的时区启动容器

假设要启动一个容器并将时区设置为 “欧洲/柏林”,请使用以下命令:

docker run -e TZ=Europe/Berlin your-docker-image

无论主机系统使用哪个时区,该命令都会启动容器并确保将时区设置为柏林时区

TC 时区规范的影响

如果设置了 TZ 变量,就会产生影响:

  • 容器内的系统时间:容器内所有与时间相关的操作都基于定义的时区。
  • 日志和时间戳:每个生成的时间条目(如日志)都按指定时区输出。
  • 计划任务:Cron 作业和其他基于时间的任务在指定时区的正确时间运行。

可用时区列表

Docker 支持由 IANA(互联网号码分配机构)维护的所有时区。这些时区以 “地区/城市 “格式指定。下面是一些最常用的时区:

  • UTC(协调世界时)
  • 欧洲/柏林
  • 欧洲/伦敦
  • 美国/纽约
  • 美国/洛杉矶
  • 亚洲/东京
  • 亚洲/上海
  • 澳大利亚/悉尼
  • 非洲/约翰内斯堡
  • 太平洋/奥克兰

使用以下命令可以显示 Linux 系统上可用时区的完整列表:

timedatectl list-timezones

此外,您还可以在网上找到IANA 时区列表

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Mastodon