【问题标题】:Setting Timezone in KiwiTCMS在 KiwiTCMS 中设置时区
【发布时间】:2021-11-02 13:59:51
【问题描述】:

我们目前正在尝试使用 docker 将 KiwiTCMS 实施到我们的工作流程中。我们已经看到,应该可以通过在设置中更改环境变量 KIWI_TIME_ZONETIME_ZONE 来更改 KiwiTCMS 中的时区。

因此,我们尝试将docker-compose.yml 中的环境变量设置为KIWI_TIME_ZONE: Europe/Berlin,或者将设置文件添加为TIME_ZONE = 'Europe/Berlin' 所在的卷。

我们已将名为 default_config.py 的设置文件添加到 docker-compose.yml 中,如下所示:

volumes:
    - ./my_settings_dir/default_config.py:/venv/lib64/python3.8/site-packages/tcms_settings_dir/default_config.py

该卷看起来已正确实施,因为我们在同一文件中更改的其他设置有效。但是在这两个文件中设置时区变量只会将时钟旁边的时区名称更改为Europe/Berlin,但时钟时间和最后一次用户登录的时间都没有改变,它们仍然显示 UTC 时间。

运行 docker 容器的服务器的时间和两个 docker 容器(DB 和 Kiwi)的时间设置为 Europe/Berlin,所以这不应该是问题。

我们已经看到大约三年前有一个 GitHub 问题提到了同样的问题,并且有一些提交来解决这个问题,但不知何故它仍然对我们不起作用。

所以现在我们不确定我们的实现是否错误,或者是否有其他原因阻止我们更改时区。

【问题讨论】:

    标签: kiwi-tcms


    【解决方案1】:

    但仅在其中一个文件中设置时区变量 将时钟旁边的时区名称更改为 Europe/Berlin 但既不是时钟的时间 也不是上次用户登录的时间 更改,它们仍然显示 UTC 时间。

    基于网络的时钟的值是否与容器内date 报告的值匹配?您需要发布实际值,以便我们了解发生了什么。

    如果它们不匹配,则可能意味着容器未针对本地时区进行适当配置。

    【讨论】:

    • 刚才查了date命令,server本身的date是Tue Nov 9 16:47:35 CET 2021,web容器里面的date是Tue Nov 9 16:47:17 CET 2021,db容器里面的date是Tue Nov 9 16:47:28 CET 2021,所以一切都设置为 CET,在 Kiwi 中,Web-Clock 显示Nov. 9, 2021, 3:46 p.m. Europe/Berlin,所以是 UTC 时间。我们通过在docker-compose.yml 中添加一个卷来设置容器中的时区,如下所示:- /etc/localtime:/etc/localtime:ro。也许那是做错了,但我们找不到任何其他方法来改变容器的时间。
    • 配置似乎合法,但我不知道还有什么问题。你能在github.com/kiwitcms/Kiwi/issues/new/choose 上打开一个包含所有详细信息的错误吗?这需要就地调试。
    【解决方案2】:

    感谢eddywu on GitHub,我们解决了这个问题。

    解决方案是在docker-compose.yml 中设置KIWI_USE_TZ: "True"。你也可以在设置文件中设置USE_TZ = True

    【讨论】:

      猜你喜欢
      • 2016-02-13
      • 2010-11-21
      • 2013-05-12
      • 1970-01-01
      • 2014-12-08
      • 1970-01-01
      • 2021-01-08
      • 1970-01-01
      • 2018-12-24
      相关资源
      最近更新 更多