Cane's Blog

Cane

【Problem】容器内时区与本地时区不一致

22
2019-06-20

问题描述

容器内时区与本地时区不一致

截图

...

解决方案

  • 镜像未生成前

    在 Dockerfile 中设置时区:

    ENV TZ=Asia/Shanghai
    RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
  • 镜像已生成 && 容器未创建

    创建容器的时候映射时区

    docker run --name <name> -v /etc/localtime:/etc/localtime:ro ...
  • 镜像已生成 && 容器已启动

    宿主机中时区复制到容器内

    docker cp /etc/localtime [容器ID或者NAME]:/etc/localtim

    容器内修改

    apk add tzdata
    ln -sf /usr/share/zoneinfo/Asia/Shanghai    /etc/localtime
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime echo "Asia/Shanghai" > /etc/timezone