Docker部署服务时间相差8小时解决方法
发布日期:2021-08-25 15:35:13 浏览次数:14 分类:技术文章

本文共 547 字,大约阅读时间需要 1 分钟。

交代一下产生问题的环境:ubuntu server 16 , tomcat8, docker部署

     最近用docker部署tomcat服务遇到了个小问题,生成订单获取的系统时间与当前北京时间相差了8个小时。第一反应是当前时区设置不对,于是查看了下系统时区,date -R ,如果不正确,则开始下面一波操作:

  • 使用tzselect,一步步操作选择北京时间
  • export TZ='Asia/Shanghai'
  • 使用date -R 查看设置情况

   本以为搞定了,结果发现问题仍然存在。看到有位网友是修改/etc/timezone文件,于是欣喜地修改内容为Asia/Shanghai,but.....这问题不简单。

冷静下来分析了一下,突然想到docker服务是一种隔离技术自成一体,会不会是它的容器内时区不对,于是进入容器内查看

docker exec -it yourcontainer /bin/bash复制代码

果然是时区不对,另外jre是通过配置文件读取本地时间的:/etc/timezone 所以在使用镜像创建容器的时候加上

-v /etc/localtime:/etc/localtime -v /etc/timezone:/etc/timezone复制代码

表示启用宿主机的时区, 问题解决

转载地址:https://blog.csdn.net/weixin_33858336/article/details/87986447 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:表单序列化之serialize && serializeArray
下一篇:自定义控件——弄个甜甜圈吧(1): 起源

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年03月11日 11时30分30秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章