在拉取一些官方镜像时,总会遇到时区不准确的问题。国外时区通常都是UTC,需要改成国内时区CST

8WTR6f.jpg

centos基础镜像修改时区

Dockerfile

1
2
3
4
FROM centos:latest
RUN yum -y -q upgrade #可有可无 如果有一定在修改时区的前面
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/Shanghai" >> /etc/timezone

ubuntu基础镜像修改时区

Dockerfile

1
2
3
4
5
FROM ubuntu:16.04

RUN ln -sf /usr/share/zoneinfo/Asia/ShangHai /etc/localtime #经测试,不加这一行有时会不生效。或系统重启后也会恢复成UTC时间
RUN echo "Asia/Shanghai" > /etc/timezone
RUN dpkg-reconfigure -f noninteractive tzdata

Alpine基础镜像修改时区

Dockerfile

1
2
3
4
5
6
7
FROM alpine:3.6
MAINTAINER it@example.cn
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
RUN apk add --no-cache tzdata \
    && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    && echo "Asia/Shanghai" > /etc/timezone \
    &&rm -rf /var/cache/apk/* /tmp/* /var/tmp/* $HOME/.cache ## 清除缓存