我们之前从Oracle官方docker仓库中生成的Oracle 19.3镜像,默认的时区并非是中国时区,这会让在查看alertlog等日志文件时比较困惑。
那么如何修改容器中的时区呢?
确认容器中已经包含了tzdata包
$ docker exec -it oracle19c_new rpm -qa|grep tz
tzdata-2019a-1.el7.noarch
通过-e参数设置容器运行的时区参数
$ docker run --name oracle19c_new \
-p 11521:1521 -p 15500:5500 \
-v /Users/Kamus/oracle/oradata/oracle19c:/opt/oracle/oradata \
-e TZ=Asia/Chongqing \
-e ORACLE_SID=ORCLNEW \
oracle/database:19.3.0-ee
检查新生成的容器的时区
$ docker exec -it oracle19c_new date +"%Z %z"
CST +0800
CST+0800表示东8时区,正是设置的中国时区。