Alpine容器更改正确时区
2016-12-13 by dongnan
目标
alpine linux
容器时区错误,需要为其设置与宿主机相同的时区。
开始之前
Alpine Linux
Alpine Linux
is a security-oriented, lightweight Linux distribution based on musllibc
andBusybox
.- more see: https://wiki.alpinelinux.org/wiki/Main_Page
错误描述
容器时间
docker exec -ti zabbix-server-mysql /bin/bash
bash-4.3# date
Tue Dec 13 07:14:53 UTC 2016
宿主机时间
date
Tue Dec 13 15:23:41 CST 2016
容器与宿主机两者差8
个时区。
解决方法
为 alpine linux
更改正确的时区,由于 alpine linux
为控制镜像体积,所以没有安装 tzdata
软件包,需要使用 apk
命令安装它。
apk add -U tzdata
fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz
(1/1) Installing tzdata (2016d-r0)
Executing busybox-1.24.2-r11.trigger
OK: 108 MiB in 44 packages
时区文件目录
ls /usr/share/
ca-certificates/ doc/ man/ misc/ mysql/ snmp/ terminfo/ zoneinfo/
拷贝时区文件
cp /usr/share/zoneinfo/Asia/Chongqing /etc/localtime
验证
操作完成后容器使用正确的时间。
date
Tue Dec 13 15:50:21 CST 2016