Скорее всего, ваше расхождение связано с тем, что на вашем локальном компьютере (или сервере) установлен часовой пояс, а в контейнере докера нет.
Вот первый тест, который я выполнил:
$ docker run -ti node:10 node -
> new Date('01.01.2017');
2017-01-01T00:00:00.000Z
Тогда я подумал о том, что часовой пояс сервера может повлиять на ответ, и это действительно так:
$ docker run -ti node:10 env TZ=Europe/Brussels node -
> new Date('01.01.2017');
2016-12-31T23:00:00.000Z
Вы можете соотнести эти два «системы»результаты поиска даты:
- Без установки часового пояса
$ docker run -ti node:10 date
Mon Mar 18 22:17:43 UTC 2019
- С настройкой часового пояса
$ docker run -ti node:10 env TZ=Europe/Brussels date
Mon Mar 18 23:17:59 CET 2019
Поскольку вы указали точную версию, которую пытались использовать, у меня все еще есть воспроизводимое поведение, с моей стороны:
- Без установленного часового пояса
$ docker run -ti node:10.15.3 node -
> new Date('01.01.2017');
2017-01-01T00:00:00.000Z
- С установленным часовым поясом
$ docker run -ti node:10.15.3 env TZ=Europe/Brussels node -
> new Date('01.01.2017');
2016-12-31T23:00:00.000Z