docker容器时间

注意:net core 在debug模式下,无法设置时区(不生效,暂未找到原因)。但是release模式下,时区会生效!

场景 问题 分析 解决
发现容器打印的日志时间有问题 容器时间与宿主机时间不一致 如果在启动Docker容器的过程中没有单独配置localtime,很可能造成Docker容器时间与主机时间不一致的情况,比如UTC和CST相差8小时,换句话来说就是容器时间与北京时间相差8个小时。 推荐在dockefile中设置
1. 查看主机时间
> [root@localhost ~]# date
> 2022年 12月 03日 星期六 22:33:18 CST
1. 查看容器时间
>[root@localhost ~]# docker exec -it 2db33ec8417b /bin/bash
>root@2db33ec8417b:/app# date
>Sat Dec  3 22:33:18 CST 2022

Dockerfile文件最下方加入:

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' > /etc/timezone
例如:
........
 FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' > /etc/timezone
ENTRYPOINT ......
posted @ 2022-12-03 22:41  daxiaxj  阅读(554)  评论(0编辑  收藏  举报