現在Dockerを利用してRailsアプリケーションを作成しています。
テーブル作成・変更時時に生成されるmigrationファイルの日付がUTCになっておりJSTに変更しようとしてもうまくいきません(m_ m)
わかる方がいらっしゃればご教授いただきますようよろしくお願いいたします(m _m)
動作環境
OS: mac
Ruby: 2.5.7
Rails: 5.1.7
現状
- エラーはなし
- migrationファイル作成時にUCTの時刻が適用されてしまう
- Railsアプリケーションを起動しブラウザで
Time.now
を表示すると下記の時刻になります(問題はなし)
erb
1<!-- 20:02 --> 22020-05-20 20:02:51 +0900
期待する動作
- migrationファイル作成時にJSTの時刻が適用されるようにしたい
参考にしたサイト
試したこと
- 下記のファイルに
#追記部分
を追加し docker-compose build
,docker-compose up
を実行- マイグレーションファイルを作成
bash
1# deviseのコマンドでユーザーテーブルを作成 2docker-compose rub web rails g devise User 3# 日本時間は20:11 4# 下記だと11:11(UTC)になっている <- 変更されていない 5#=> invoke active_record 6#=> create db/migrate/20200520111136_devise_create_users.rb 7#=> create app/models/user.rb 8#=> insert app/models/user.rb 9#=> route devise_for :users
該当しそうなコード
docker
1# docker-compose.yml 2version: '3.7' 3 4services: 5 db: 6 image: mysql:5.7 7 environment: 8 MYSQL_ROOT_PASSWORD: password 9 MYSQL_DATABASE: root 10 ports: 11 - "4306:3306" 12 volumes: 13 - db-data:/var/lib/mysql 14 web: 15 # 追記部分 16 environment: 17 TZ: Asia/Tokyo 18 # - "TZ=Japan" 19 init: true 20 tty: true 21 stdin_open: true 22 build: . 23 command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'" 24 volumes: 25 - .:/webapp 26 ports: 27 - "3000:3000" 28 links: 29 - db 30 31volumes: 32 db-data:
docker
1# Dockerfile 2ARG RUBY_VERSION=2.5.7 3 4FROM ruby:$RUBY_VERSION 5 6ENV LANG C.UTF-8 7ENV APP_DIR /webapp 8 9 10RUN apt-get update -qq && \ 11 apt-get install -y --no-install-recommends \ 12 vim \ 13 nodejs \ 14 build-essential && \ 15 rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* 16 17RUN mkdir $APP_DIR 18WORKDIR $APP_DIR 19 20ADD ./Gemfile $APP_DIR/Gemfile 21ADD ./Gemfile.lock $APP_DIR/Gemfile.lock 22 23RUN gem install bundler -v "1.17.3" 24RUN bundle install --jobs=10 25 26ADD . $APP_DIR
ruby
1# config/application.rb 2require_relative 'boot' 3require 'rails/all' 4Bundler.require(*Rails.groups) 5 6module Webapp 7 class Application < Rails::Application 8 config.load_defaults 5.1 9 config.i18n.available_locales = [ :en, :ja ] 10 config.i18n.default_locale = :ja 11 12 config.time_zone = 'Tokyo' 13 config.active_record.default_timezone = :local 14 15 # Don't generate system test files. 16 config.generators.system_tests = nil 17 end 18end 19
回答1件
あなたの回答
tips
プレビュー