docker container中变更timezone

发布时间 2023-12-04 16:38:21作者: Believer007

当前使用了playwright官方python镜像: https://playwright.dev/python/docs/docker

但在实际使用时,时间总是显示为UTC0时间

 正好相差8个小时,前面是jenkins打印时间,后面部分是container内部时间

查了网上各种方法,总共有几种:

1,直接加命令行:

docker run -e TZ=Asia/Shanghai

2, 直接改local time

docker cp /usr/share/zoneinfo/Asia/Shanghai container:/etc/localtime

看起来第一个方法最简单,结果尝试后不成功,未生效

图像但实际我的时间为图像

反复折腾,最终找到原因如下:

 

默认playwright镜像是没有安装tzdata包。

查询:

dpkg -l|grep tzdata

解决方案:

二次制作镜像:

FROM <playwright镜像名>
RUN apk add --no-cache tzdata

或者,run了基础镜像后

直接跑以下命令:

apt-get install tzdata -y

再次将镜像上传至你个人库中

使用:

这时,可以使用方案一解决时区问题:

 时区显示正确