Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Docker Timezone in Ubuntu 16.04 Image

Tags:

I have created a Docker container using the Ubuntu 16.04 image.

docker run -it -d --name containername -v /var/www/public --privileged ubuntu 

after creating the container, I checked the date inside the container:

$ date Tue Oct 25 08:10:34 UTC 2016 

But, I need it to use the Asia/Kolkata timezone. So I tried changing the /etc/timezone file, then docker stop and docker start the container, but it doesn't work. It still shows the same time.

How can I change the time zone in the Docker container after creating it?

like image 928
Rajkumar .E Avatar asked Oct 25 '16 08:10

Rajkumar .E


People also ask

How do I know my container time zone?

The directory /usr/share/zoneinfo in Docker contains the container time zones available. The desired time zone from this folder can be copied to /etc/localtime file, to set as default time. The containers created out of this Dockerfile will have the same timezone as the host OS (as set in /etc/localtime file).

What is default timezone in Docker container?

The default time-zone for any Docker container is UTC.


1 Answers

Updating /etc/timezone is the usual way, but there's a bug in Xenial which means that doesn't work.

Instead you need to create a link from the desired timezone to etc/localtime:

FROM ubuntu:xenial      RUN ln -fs /usr/share/zoneinfo/US/Pacific-New /etc/localtime && dpkg-reconfigure -f noninteractive tzdata 
like image 198
Elton Stoneman Avatar answered Sep 19 '22 16:09

Elton Stoneman