1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【🔴エラー対応】CircleCiでの自動テスト時に、「Rails」+「Docker」環境でエラーになる【自動デプロイ】

Last updated at Posted at 2022-04-12

✅当方の環境

  • 開発環境 : Docker
  • 本番環境 : heroku
  • Gemfileの内容
    • ruby 2.7.5
    • rails 6.1.5
    • webpacker 5.0

✅関連キーワード

  • 「Docker」+「Rails」+「CircleCi」の環境
  • CircleCiにおける自動テスト時にエラー(ビルド時はエラーが出ていない)
  • 「bundle exec rails db:migrate」でエラーが発生している模様
  • Run bundle install to install missing gems.
  • bundle installされない

✅エラー内容

  • CircleCiのログの内容※一部抜粋
#!/bin/bash -eo pipefail
bundle exec rails db:migrate
Could not find rake-13.0.6 in any of the sources
Run `bundle install` to install missing gems.

Exited with code exit status 1
CircleCI received exit code 1

✅エラー箇所

  • 「.circleci\config.yml」に記載している「test」のrunコマンドの実行箇所
.circleci\config.yml
<中略>
      - run:
          name: Database setup
          command: bundle exec rails db:migrate
<中略>

✅エラー原因

  • どうやら、CircleCI側で用意しているDockerのRUBYのイメージが、2021/12/31以降から新しいものに変更されたたため。
  • 「.circleci\config.yml」に記載しているDockerのイメージは、古いのもらしい(Rubyのバージョンとは無関係)

✅エラー対応

  • 「.circleci\config.yml」に記載しているDockerのイメージを、2021/12/31以降の新しいイメージに修正する
<中略>
  test:
    docker:
-      - image: circleci/ruby:2.7 #変更前
+      - image: cimg/ruby:2.7     #変更後
       - image: circleci/mysql:5.5
<中略>
  • そのほかのDockerイメージのもの(Rubyのみ)もすべて変更する
  • Mysqlなどの別の種類は修正してはいけない(修正したらbuildでエラーが出ます)

✅エラー参考資料

1
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?