1、问题:

	一般docker镜像的时间与系统的时间是不一致的,原因是使用的时区不同,系统时区一般为Asia/Shanghai。

2、解决方法:

    将系统/usr/share/zoneinfo/Asia/下的Shanghai文件拷贝到Dockerfile所在的目录
		cd "Dockerfile所在的目录"
		cp /usr/share/zoneinfo/Asia/Shanghai .
	在Dockerfile里加上几句就可以使镜像时间和系统时间一致,需要在Dockerfile中添加的语句如下:
	1) 删除基础镜像的时间文件
	    RUN rm -rf /etc/localtime
	2) 创建文件夹(可能有些基础镜像没有该目录)
		RUN mkdir -p /usr/share/zoneinfo/Asia
	3) 拷贝文件Shanghai到/usr/share/zoneinfo/Asia/
	    COPY Shanghai /usr/share/zoneinfo/Asia/
	4) 创建软连接
        RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

3、Dockerfile示例:

	FROM nvidia/cuda:8.0-cudnn6-devel-ubuntu16.04
	
	RUN rm -rf /etc/localtime
	RUN mkdir -p /usr/share/zoneinfo/Asia
	COPY Shanghai /usr/share/zoneinfo/Asia/
	RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐