当前位置: 首页 > news >正文

设置Docker中时区不生效的问题

项目中使用docker-compose,并通过以下方式设置了时区

environment:- SET_CONTAINER_TIMEZONE=true- CONTAINER_TIMEZONE=Asia/Shanghai

但是并没有正确生效,网上有很多博客都在推荐这个做法,另外一种是使用标准环境标量

-TZ=Asia/Shangehai

我对此产生了疑问为什么,标准第二种方式可以但是第一种却不行,且大家并未对此产生怀疑,还有另外一种方式 就是在Dockerfile 构建镜像的时候 使用RUN 向 /etc/timezone 中写入具体时区,比如下面这样,代码引用自另外一篇博文 出处

FROM docker.io/centos
MAINTAINER DAVID# 使用RUN命令设置时区
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai'>/etc/timezone

根据信息显示,我直接搜索了SET_CONTAINER_TIMEZONE,弹出的第一篇文章是  Ivan Krizsan

写的 Time in docker containers,当中就解释了,这个SET_CONTAINER_TIMEZONE 环境变量是为了方便share image的时候,便于其他用户修改时区而设置的,原文如下

可以明确的看到 需要手动将环境变量读取出来,并进行设置。seo 第一,不代表就是SET_CONTAINER_TIMEZONE的出处,所以利用时间工具,验证了docker 出品时间2013年到2015年期间所有的搜搜记录,仅仅两条,https://www.ivankrizsan.se/2015/10/31/time-in-docker-containers/ 所以实际上这个变量是一个社区规范可能,并没有在产品实现上进行约束或者规定。疑问到此解开

补充额外的时区设置方案,即将 宿主主机的/etc/localtime /etc/timezone 共享给容器,也可以令运行的容器的时区改变

相关文章:

  • UDP协议深入解析
  • 系统级应用锁的实现方法
  • 评估指标rouge安装与测试
  • 恢复机制-数据库系统中的故障(事务故障、系统故障、介质故障)、一致性错误、窃取但不强制的缓冲区管理策略
  • 零知识学习之DPDK与RDMA(3)—— 认识DPDK(3)
  • 阿里云物联网应用层开发:第二部分,云产品流转
  • vue2由mapbox2升级为mapbox3遇到的矢量底图样式丢失问题解决办法
  • 马工程刑法期末复习笔记重点2
  • C++: 左值引用和右值引用
  • 初入Node.js必备知识
  • 安卓请求服务器[根据服务器的内容来更新spinner]
  • 华为5288 V5服务器安装BCLinux8U4手记
  • 电传动无杆飞机牵引车交付用户
  • 如何找BMS算法、BMS软件的实习
  • CentOS8换源
  • ----------
  • [PHP内核探索]PHP中的哈希表
  • Akka系列(七):Actor持久化之Akka persistence
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • HTTP--网络协议分层,http历史(二)
  • java2019面试题北京
  • JS笔记四:作用域、变量(函数)提升
  • JS正则表达式精简教程(JavaScript RegExp 对象)
  • Laravel 中的一个后期静态绑定
  • Next.js之基础概念(二)
  • Python利用正则抓取网页内容保存到本地
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • vue数据传递--我有特殊的实现技巧
  • 高性能JavaScript阅读简记(三)
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 记一次用 NodeJs 实现模拟登录的思路
  • 聚簇索引和非聚簇索引
  • 开源SQL-on-Hadoop系统一览
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 如何实现 font-size 的响应式
  • 深度学习入门:10门免费线上课程推荐
  • 使用docker-compose进行多节点部署
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 线上 python http server profile 实践
  • 用 Swift 编写面向协议的视图
  • nb
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • raise 与 raise ... from 的区别
  • 阿里云服务器如何修改远程端口?
  • ​MySQL主从复制一致性检测
  • ​如何在iOS手机上查看应用日志
  • #include
  • #pragma 指令
  • $refs 、$nextTic、动态组件、name的使用
  • (10)ATF MMU转换表
  • (12)Hive调优——count distinct去重优化
  • (rabbitmq的高级特性)消息可靠性
  • (void) (_x == _y)的作用
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142