0
0

More than 3 years have passed since last update.

【M1チップ/Docker/Rails6/MySQL5】既存アプリをローカルでDocker環境を構築する道程で遭遇したエラー

Last updated at Posted at 2021-06-24

やりたいこと

既存アプリに対してローカル環境でのdocker導入

環境

Ruby 2.6.5
rails 6.0
MySQL 5.6
M1チップ搭載MacOS

遭遇したエラー

1.ERROR RUN bundle install
2.error Integrity check failed
3.ActiveRecord::NoDatabaseError
4.Aws::Sigv4::Errors::MissingCredentialsError in items#index

1.ERROR RUN bundle install

発生したエラー
Could not locate Gemfile
bundle update --bundler
gem install bundler:2.1.4

Dockerfileとdocker-compose.ymlを書いて、docker-compose up --buildを実行したとき

 解決方法
ENV BUNDLER_VERSION 2.1.4
RUN gem update --system \
    && gem install bundler -v $BUNDLER_VERSION \
    && bundle install -j 4

2.error Integrity check failed

発生したエラー
Your Yarn packages are out of date!
web_1  |   Please run `yarn install --check-files` to update.

docker-compose up -dを実行したとき

 解決方法
config/webpacker.yml
 - check_yarn_integrity: true
 + check_yarn_integrity: false

trueをfalseに変更

3.ActiveRecord::NoDatabaseError

発生したエラー
Unknown database 'fridge_app_development'

docker-compose up -dを実行してサーバーにアクセスして表示されないとき

 解決方法
% docker-compose exec web rails db:create
% docker-compose exec web rails db:migrate
% docker-compose exec web rails db:seed

ターミナルでコマンド実行。単純にDBを作るだけ

4.Aws::Sigv4::Errors::MissingCredentialsError in items#index

発生したエラー
Cannot load `Rails.config.active_storage.service`: 
missing credentials, provide credentials with one of the following options:
 - :access_key_id and :secret_access_key
 - :credentials
 - :credentials_provider

docker-compose up -dを実行してサーバーにアクセスして表示されないとき

 解決方法
environment:
      AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
      AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY

.envファイルで環境変数を宣言して、Dockerfileで展開するように追記

まとめ

その他、細かいエラー等ありましたが、なんとかローカル環境でDocker導入できました。次回はHeorkuでのDocker環境構築の記事を備忘録として書き留めます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0