解决方法

一、先查看服务器和容器时区设置是否一致:

1、docker容器内的时区是UTC 
2、主机的时区是CTS

二、这两个时区有什么不同呢?

GPS 系统中有两种时间区分,一为UTC,另一为LT(地方时)两者的区别为时区不同,UTC就是0时区的时间,地方时为本地时间,如北京为早上八点(东八区),UTC时间就为零点,时间比北京时晚八小时

CTS: 
China Standard Time,UTC+8:00 中国沿海时间(北京时间) 
UTC: 
Universal Time Coordinated 世界协调时间

三、如何解决?(设置时区一致)

解决的时候做了三种尝试:

第一次在服务镜像所依赖的镜像tomcat的Dockerfile中加入如下设置:

RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' >/etc/timezone

重新构建镜像,启动容器,发现和此tomcat镜像在同一台服务器上的服务时区和时间均修改成功,但是不在同一台服务器上的docker容器还是UTC时区,时间不一致。

第二次,容器启动的时候挂个参数,让其使用主机服务器上的时间:

docker run -d --name demo-service --rm -p 8084:8080 -v /usr/local/tomcat/logs/tomcat8080:/usr/local/tomcat/logs -v /etc/localtime:/etc/localtime demo-service:1.0.0

其中加入的 -v /etc/localtime:/etc/localtime就是时间的设置,设置好后,启动容器,进入容器内部,打date命令,输出的时间和主机时间一样,然后查看tomcat日志,发现日志的时间没有变还是比主机晚8个小时。

于是,寻求另一种解决办法。

第三次,在各个服务的Dockerfile中加入对时区和时间的设置,如第一次尝试的Dockerfile中加入的内容。

重新使用Jenkins构建服务,实验成功!

转载于:https://www.cnblogs.com/killall007/p/9647028.html

解决Docker容器时间与主机不一致问题相关推荐

  1. Docker学习总结(44)——Docker容器时间与主机时间不一致的三种解决方式

    分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!点击浏览教程 问题 我们在使用docker时发现Docker容器时间与主机时间经常出现不一致的情况 ...

  2. 解决 Docker 容器时间与本地时间不一致的问题

    Linux 通过 Date 命令查看系统时间,得到如下结果: [root@iZ8vbg6m7f5ntzibw3t4huZ ~]# date Mon Aug 26 12:24:58 CST 2019 但 ...

  3. docker 日志_解决docker容器日志导致主机磁盘空间满了的情况

    日志文件在 /var/lib/docker/containers// 目录下 查看日志大小 vim /opt/docker_log_size.sh #!/bin/shecho "====== ...

  4. Docker 解决容器时间与主机时间不一致的问题三种解决方案

    Docker容器时间与主机时间不一致 通过date命令查看时间 查看主机时间 [root@localhost ~]# date 2016年 07月 27日 星期三 22:42:44 CST 查看容器时 ...

  5. Docker容器时间与宿主机不一致?3个解决方案

    目录 前言 更新历史 问题描述 解决方案 docker run 添加时间参数 Dockerfile解决方案 docker-compose解决方案 宿主机直接执行命令给某个容器同步时间 异常问题 Doc ...

  6. 解决Docker容器内访问宿主机MySQL数据库服务器的问题

    解决Docker容器内访问宿主机MySQL数据库服务器的问题 参考文章: (1)解决Docker容器内访问宿主机MySQL数据库服务器的问题 (2)https://www.cnblogs.com/ga ...

  7. 解决Docker容器时区不一致的问题

    解决Docker容器时区不一致的问题 参考文章: (1)解决Docker容器时区不一致的问题 (2)https://www.cnblogs.com/zhi-leaf/p/10604574.html ( ...

  8. linux new date差8个小时,柚子生活-解决Docker容器new Date()时间比北京时间早八个小时问题...

    前言 为了知道Docker容器有没有正常启动,于是我就把Docker容器的一些信息写入redis.其中有一个数据是new Date()获得的启动时间,以容器方式部署在linux上面发现这个启动时间比北 ...

  9. 解决Docker容器日志占用空间过大

    目录 问题描述 查看容器日志大小 解决方案 脚本方案(不推荐) 针对单个容器方案 针对全局容器方案 注意 问题描述 docker容器日志导致主机磁盘空间满了.docker logs -f contai ...

最新文章

  1. 不重启iis的情况下切换iis的.net版本
  2. 手写AngularJS脏检查机制
  3. ubuntu安装python库_Ubuntu18.04一次性升级Python所有库的方法步骤
  4. ZooKeeper ZAB协议:崩溃恢复、消息广播
  5. JEECG寒假集训班开始报名啦!
  6. 用Siamese和Dual BERT来做多源文本分类
  7. 【codevs4093】 EZ的间谍网络 强连通分量+tarjan缩点
  8. python字符串赋值列表_Python 第二篇:python字符串、列表和字典的基本操作方法...
  9. Java随笔记录第五章:类设计基础
  10. Cisco 2960 3750交换机端口流量的限速(QOS)详解
  11. 0809 电子科学与技术一级学科简介
  12. 【微信小程序】用户授权以及判断登录是否过期的方法
  13. 土地利用覆盖数据(欧空局CCI300m)数据分享
  14. Android12之OpenSL ES基础数据结构总结(十)
  15. 【报告分享】2022百度职业资格考试培训行业洞察-百度营销研究院(附下载)
  16. SQL server 2008 定义数据类型
  17. 台式计算机如何判断电源损坏,如何判断电脑电源供电不足?
  18. 数据库DB与数据仓库DW区别和联系
  19. html markdown 互相转换,Vue/Vue中Html和Markdown互相转换/README.md · 撒欢大魔王/LearningNotes - Gitee.com...
  20. mysql类型转换及小数点保留问题(cast函数)

热门文章

  1. NXP Pico i.MX7D上安装Android Things系统疑难杂症汇总
  2. 4. Spring Boot 过滤器、监听器
  3. 关于Web安全的三个攻防姿势
  4. 解决/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found错误的解决
  5. js条件判断时隐式类型转换
  6. Get IAT Table
  7. c# RegistryKey 的相关简单操作
  8. php正则如何使用 1,PHP正则表达式使用详解(1)
  9. 华为鸿蒙净水机,华为鸿蒙OS 2.0手机版功能抢先曝光
  10. python进程池的实现原理_Python基于进程池实现多进程过程解析