介绍
这篇文章主要介绍”Dockerfile怎么设置默认时区”,在日常操作中,相信很多人在Dockerfile怎么设置默认时区问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答“Dockerfile怎么设置默认时区”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
我们打包镜像时使用的基础镜像基本上都是采用UTC(格林时间),与我们常用的北京(上海)时间(CST)相差8个小时。我们可以在创建一个容器的时候,将宿主机时区相关的目录文件挂在到容器上:
docker run ——rm -it -v /etc/作用:/etc/localtime ubuntu #,进入容器、日期测试 root@3e6c1d137e02:/#,日期 Mon Aug , 5, 15:26:20 CST 2017年
这种方法相对麻烦,每次新建容器都需要挂载宿主机器时区相关的配置目录/文件。为了简化这一步,可以通过Dockerfile打包新的镜像,修改容器的默认时区。下面分三个基础系统镜像分别实现:Ubuntu
使用Ubuntu作为基础镜像,需要先下载安装tzdata包,默认时区是UTC时区,修改配置文件,并通过dpkg-reconfigure重置时区配置生效。安装完成之后,为了尽量减少镜像体力,删除安装过程中产生的各种非必要文件。
<>之前得到Ubuntu , MAINTAINER fastjrun , ENV TIME_ZONE 亚洲/上海 , RUN sed 小姐;s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list \ ,,,,,,apt-get update \ ,,,,,,apt-get install -y tzdata \ ,,,,,,ln -snf /usr/share/zoneinfo/TIME_ZONE 美元/etc/localtime ,,, echo TIME_ZONE 美元;在/etc/timezone \ ,,,,,,dpkg-reconfigure -f noninteractive tzdata \ ,,,,,,apt-get clean \ ,,,,,,rm -rf /tmp/*,/var/缓存/*,/usr/share/doc/*,/usr/share/人/*,/var/lib/apt/清单/*Alphine
Alphine号称最小的Linux系统镜像(才5米),先采用apk包管理器来安装tzdata包,设置相关配置文件。
<>之前得到高山 MAINTAINER igitlib , RUN apk  add ——no-cache  tzdata \ ,,,,,,cp /usr/share/zoneinfo/亚洲/Shanghai /etc/localtime \ ,,,,,,echo “亚洲/Shanghai",在/etc/timezone \ ,,,,,,apk del tzdataCentos
Centos就相对很简单,只需要添加配置文件即可。
<>之前得到Centos , ENV TIME_ZONE 亚洲/上海 , RUN ln  -snf 美元/usr/share/zoneinfo/TIME_ZONE /etc/localtime到此,关于“Dockerfile怎么设置默认时区”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!