docker - alpine容器修改时区的方法

BrotherDong0 2019-08-07

由于体积很大小,alpine经常用在容器里面,但是经常发现跟时间相关的都不正确,不是本地时间,通过date命令可以看到,是UTC时间。

docker - alpine容器修改时区的方法

在alpine最小化的包里面是没有时区信息文件的,需要另外安装。

docker - alpine容器修改时区的方法


安装

apk add --no-cache tzdata

拷贝对应的时区文件按到/etc/localtime

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

验证

date

命令就可以看到时区已经被修改了


卸载

复制完以后tzdata这个包就没有用了,可以del掉。在制作镜像的时候,cp完就直接del就可以了。

apk del tzdata

另外一种方法

也可以直接使用物理机的时区文件,这样子就不需要安装操作了。

在写dockerfile的时候,直接复制制作物理机上的localtime:

copy /etc/localtime /etc/

也可以在容器启动的时候,再去挂载主机localtime文件

docker run -it --name sample_alphine -v /etc/localtime:/etc/localtime -d alphine:lastest

docker - alpine容器修改时区的方法

相关推荐