使用openjdk:8-jdk-alpine 镜像部署java应用时会出现时区不一致的问题。
自己封装一个镜像,解决时区问题,并供之后使用。
拉取 openjdk:8-jdk-alpine 镜像
[root@VM-0-9-centos ~]# docker pull openjdk:8-jdk-alpine
运行并进入容器
[root@VM-0-9-centos ~]# docker run -itd --name openjdk8-win openjdk:8-jdk-alpine
[root@VM-0-9-centos ~]# docker exec -it openjdk8-tz sh
增加安装 tzdata 包。
Time Zone Database,简称tz或tzinfo,是一组表示地球上各地的时间历史的代码和数据,目前由IANA维护。
IANA会根据各地政体的变化而定期更新关于时区边界、UTC和夏令时等的规则。
而tzdata是Time Zone Database发布的组件之一,其他还有tzcode等。
tzdata软件包,全称time zone and daylight-saving time(DST) data,供各个Linux系统安装以读取Time Zone Database中数据。
/ # apk update
/ # apk add tzdata
修改时间
/ # cd /usr/share/zoneinfo/
/usr/share/zoneinfo # ls
Africa Atlantic Canada EST5EDT Factory GMT-0 Iceland Japan MST7MDT PRC ROC US

本文介绍如何基于openjdk:8-jdk-alpine镜像创建自定义Docker镜像,解决部署Java应用时遇到的时区问题。通过安装tzdata包、设置正确的时区和Java配置,确保应用时间和主机时间保持一致。
最低0.47元/天 解锁文章
2784

被折叠的 条评论
为什么被折叠?



