docker-node icon indicating copy to clipboard operation
docker-node copied to clipboard

Wrong time in new Date

Open davidschrooten opened this issue 6 years ago • 3 comments

https://github.com/nodejs/docker-node/issues/626

Having this same issue on node:10-alpine. Tried solution from issue above and whatever I could find in gliderlabs/docker-alpine/issues/136. But to no avail. When doing console.log(new Date()) the issue persists in node.js; time differs minus 2 hours from what busybox says when running the date command.

davidschrooten avatar Sep 17 '19 08:09 davidschrooten

My Dockerfile

FROM node:10-alpine

ENV TZ=Europe/Amsterdam

RUN apk --update add \
		tzdata \
	&& cp /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \
	&& apk del tzdata

RUN apk --no-cache --virtual temp add build-base \
                       autoconf \
                       curl

RUN apk --no-cache add zeromq-dev \
                       python2 && \
    curl -Ls "https://github.com/dustinblackman/phantomized/releases/download/2.1.1/dockerized-phantomjs.tar.gz" | tar xz -C /

ENV PYTHON /usr/bin/python2

ADD ./bin /home/node/app/bin
ADD ./packages /home/node/app/packages
ADD ./package.json /home/node/app/package.json
ADD ./npm-shrinkwrap.json /home/node/app/npm-shrinkwrap.json
ADD ./lerna.json /home/node/app/lerna.json

WORKDIR /home/node/app

RUN npm ci

WORKDIR /home/node/app/packages/lib-helpers

RUN npm install zeromq --zmq-external

WORKDIR /home/node/app

RUN npm run bootstrap && \
    npm rebuild && \
    apk del temp

RUN find . -name ".env" -type f -delete

davidschrooten avatar Sep 17 '19 08:09 davidschrooten

Node.js (> v10) doesn't use system's tzdata anymore, ICU has its own tzdata. Maybe is it a reason?

ex1st avatar Nov 06 '19 19:11 ex1st

Node.js gets its timezone data from the ICU library, aka International Components for Unicode.

ICU can be changed by configuration during compilation.

stringang avatar Jan 28 '23 09:01 stringang