当前位置: 首页 > 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 共享给容器,也可以令运行的容器的时区改变

http://www.lryc.cn/news/394178.html

相关文章:

  • LeetCode436:寻找右区间
  • 前端JS特效第22集:html5音乐旋律自定义交互特效
  • pyrender 离线渲染包安装教程
  • XSS平台的搭建
  • 【持续集成_03课_Jenkins生成Allure报告及Sonar静态扫描】
  • PageHelper分页查询遇到的小问题
  • 【Python】组合数据类型:序列,列表,元组,字典,集合
  • algorithm算法库学习之——不修改序列的操作
  • idea创建的maven项目pom文件引入的坐标报红原因
  • Python面试题:Python 中的生成器(generator)是什么?有什么优点?
  • Go语言--复合类型之map、结构体
  • Stable Diffusion图像的脸部细节控制——采样器全解析
  • CurrentHashMap巧妙利用位运算获取数组指定下标元素
  • 实现antd designable平台的组件拖拽功能
  • 计算机网络-IP组播基础
  • Git删除了文件拉取时失败
  • 【面向就业的Linux基础】从入门到熟练,探索Linux的秘密(十二)-管道、环境变量、常用命令
  • Spring Boot与Apache Kafka Streams的集成
  • Unity中使用VectorGraphics插件时,VectorUtils.RenderSpriteToTexture2D方法返回结果错误的解决方法
  • 用MySQL+node+vue做一个学生信息管理系统(一):配置项目
  • 2024年06月CCF-GESP编程能力等级认证Python编程二级真题解析
  • Unity动画系统(2)
  • 深度网络现代实践 - 深度前馈网络之反向传播和其他的微分算法篇
  • 自动化设备上位机设计 四
  • [leetcode hot 150]第二十三题,合并K个升序链表
  • MybatisPlus实现插入/修改数据自动设置时间
  • Java语言程序设计篇一
  • Calicoctl工具学习 —— 筑梦之路
  • Wormhole Filters: Caching Your Hash on Persistent Memory——泛读笔记
  • PyTorch学习之torch.transpose函数