如何在docker上更改postgreSQL 9.5的时区?

问题描述 投票:0回答:4

默认时区是 UTC。 但我想把它改成GMT+2。 我尝试如下。

alter database governance set timezone = 'GMT+2';

但是不起作用。

我该如何管理?

postgresql 版本是 9.5。 它运行在 Docker 上。

谢谢!

docker postgresql-9.5
4个回答
38
投票

您应该在 docker compose 文件中设置时区(需要

TZ
PGTZ
):

postgres:
    image: postgres
    environment:
        TZ: 'GMT+2'
        PGTZ: 'GMT+2'

参考:https://github.com/docker-library/postgres/issues/137#issuecomment-217064811


15
投票

对于那些使用TZ却没有任何反应的人

我的原因是容器第一次启动时 它将 TZ 变量存储在映射卷的 PG 配置中。将 docker compose 文件更改为另一个 TZ 值后,它保持不变并且看起来不起作用。 你应该先删除数据库,然后重新启动 docker-compose

2023年

如果您使用某些 IDE PG 客户端,可能需要有关您时区的其他信息

这里是如何修复它的附加信息


12
投票

要更改图像的时区,请尝试以下操作:

docker run -it -e "TZ=GMT+2" postgres:alpine

docker-compose.yml

postgres:
  image: postgres:alpine
  environment: 
    - TZ=GMT+2

5
投票

您必须在

docker-compose.yml
文件中指定时区,格式如下:

postgres:
    image: postgres:alpine
    environment:
        TZ: "Europe/Madrid"
© www.soinside.com 2019 - 2024. All rights reserved.