Обнаружение перехода на летнее время в Ruby on Rails не работает в недавнем контейнере ruby:2.7.1-alpine

Рубин на рельсах с недавним ruby:2.7.1-alpine контейнер, прерывает поддержку перехода на летнее время в часовом поясе:

irb(main):004:0> Time.zone.to_s
=> "(GMT+01:00) Europe/Berlin"
irb(main):005:0> Time.zone.parse("2020-08-27").zone
=> "CEST"
irb(main):006:0> Time.zone.parse("2020-12-27").zone
=> "CEST"

2020-12-27 должен быть CET из-за перехода на летнее время. При локальной установке ruby ​​и предыдущих сборках контейнера он работал и возвращал:

irb(main):006:0> Time.zone.to_s
=> "(GMT+01:00) Europe/Berlin"
irb(main):007:0> Time.zone.parse("2020-08-27").zone
=> "CEST"
irb(main):008:0> Time.zone.parse("2020-12-27").zone
=> "CET"

Dockerfile выглядит следующим образом:

FROM ruby:2.7.1-alpine

# Add basic packages
RUN apk add --update --no-cache \
      build-base \
      python2 \
      postgresql-dev \
      git \
      nodejs \
      yarn \
      tzdata \
      file \
      # Image processing resources
      gobject-introspection-dev \
      poppler-dev \
      # Test Resources
      chromium-chromedriver \
      chromium \
      harfbuzz \
      nss

WORKDIR /app

# Install standard gems
COPY Gemfile* /app/
RUN gem install bundler && \
    bundle config --global frozen 1 && \
    bundle config --local build.sassc --disable-march-tune-native && \
    bundle install -j4 --retry 3

# Install standard Node modules
COPY package.json yarn.lock /app/
RUN yarn install

ONBUILD COPY . ./

Кто-нибудь знает больше о внутреннем устройстве? Это проблема с рейлингами, рубином или альпийским пакетом. Любая помощь была бы замечательной!

ОБНОВИТЬ

Я мог бы воспроизвести поведение с помощью чистого докера, например:

docker run -it ruby:2.7.1-alpine  /bin/sh

   0 apk add --update --no-cache build-base sqlite-dev nano nodejs yarn tzdata
   1 gem install rails
   2 rails new timzone_test
   3 rails webpacker:install
   4 nano config/application.rb # add config.time_zone = 'Europe/Berlin'
   5 rails console

У меня такая же проблема с этой чистой установкой

Loading development environment (Rails 6.0.3.4)
irb(main):001:0> Time.zone.parse("2020-12-27").zone
=> "CEST"

После добавления gem 'tzinfo-data' в Gemfile все заработало как положено:

Loading development environment (Rails 6.0.3.4)
irb(main):001:0> Time.zone.parse("2020-12-27").zone
=> "CET"

0 ответов

Другие вопросы по тегам