docker-compose.yaml设置中国时区

本文详细介绍了在Docker环境中配置时区的方法,包括在Dockerfile及docker-compose.yaml文件中的具体操作步骤,解决了因默认使用格林尼治时间带来的不便。
该文章已生成可运行项目,

背景

docker中如果对时区不加限制,默认会采用格林尼治时间(GMT),这给日常程序部署、日志查看、错误调试等带来了诸多麻烦与困扰。
每次都需要将event发生的显示时间+8个时区,手工换算成北京时间,想想都令人抓狂。
强调: 实验的docker-compose为2.2版本,其他版本未做相应测试, 请谨慎判别.

Dockerfile中配置时区

在Dockerfile中,可以通过如下方式添加中国时区:

FROM docker.io/centos
MAINTAINER DAVID

# 使用RUN命令设置时区
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai'>/etc/timezone

docker-compose.yaml中配置时区

但如果docker程序是以docker-compose.yaml构建,那么时区这块需要如何设置呢?

经过实测,如下两种方式都可行。

方式一:
environment:
  - SET_CONTAINER_TIMEZONE=true
  - CONTAINER_TIMEZONE=Asia/Shanghai
	  
方式二:
environment:
  - TZ=Asia/Shanghai
本文章已经生成可运行项目
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值