pod时区更改
在K8S里启动一个容器,该容器的设置的时区是UTC0,但是对于很多人而言,其主机环境并不在UTC0。例如中国客户在UTC8。如果不把容器的时区和主机主机设置为一致,则在查找日志等时候将非常不方便,也容易造成误解。
1.挂载服务器的时间文件
当然,pod内部需要有/etc/localtime这个文件,否则pod会启动失败
apiVersion: v1 kind: Pod metadata: name: nginx-pod namespace: default labels: app: my-pod spec: containers: - name: my-pod image: nginx volumeMounts: - name: host-time mountPath: /etc/localtime readOnly: true volumes: - name: host-time hostPath: path: /etc/localtime
2.传递变量
这种比较方便,只需要修改yaml文件就可以
apiVersion: v1 kind: Pod metadata: name: pod-env-tz spec: containers: - name: ngx-time image: nginx:latest env: - name: TZ value: Asia/Shanghai
3.制作docker镜像时添加
# 拷贝到当前目录 cp /usr/share/zoneinfo/Asia/Shanghai ./localtime vim timezone Asia/Shanghai # 修改dockerfile FROM nginx MAINTAINER zexiong.li@dena.com ... ... ADD localtime /etc/localtime # 添加 ADD timezone /etc/timezone # 添加 ... ...