AWS Ruby on Rails

rails db:createで raise ArgumentError, "Missing secret_key_base for '#{Rails.env}'...と怒られる

本サイトの記事内にアフィリエイト広告が含まれる場合があります。

rails db:createで raise ArgumentError, "Missing secret_key_base for '#{Rails.env}'...と怒られるの記事のサムネイル画像

awayuki

音大出身。学生時代はフリーランスでWEB制作・開発しながら、2社で長期エンジニアインターンを経験しました(2年半)。 23卒で、自社開発ベンチャー企業に入社しエンジニア・デザイナーとして働き、2024年1月起業しました! このブログでは、ブログ開設方法・プログラミング・音大からエンジニアになれた方法など書いています。 お仕事依頼はお問い合わせフォームからお問い合わせお願いします。 Zenn

Rails とEC2 PumaでWEBアプリケーションをデプロイしています。

Ruby on Railsのアプリ開発や、デザインのご依頼大歓迎です…🥺
お問い合わせページからお気軽にご連絡ください。

著:すがわら まさのり, 著:前島 真一, 著:橋立 友宏, 著:五十嵐 邦明, 著:後藤 優一
¥3,751 (2024/11/15 15:27時点 | Amazon調べ)

エラー内容

RailsアプリケーションをEC2にデプロイ時に起きたエラーです。

ArgumentError: Missing secret_key_base for 'production' environment, set this string with bin/rails credentials:edit (ArgumentError)

    raise ArgumentError, "Missing `secret_key_base` for '#{Rails.env}' environment, set this string with `bin/rails credentials:edit`"

rails db:create を実行した際に表示されるこのエラーは、Railsアプリケーションの production 環境において secret_key_base が設定されていないことを示しています。

secret_key_base は、Railsアプリケーションのセッションやクッキーの暗号化に使用される重要な設定です。

解決方法

シークレットキーの生成

ターミナルで以下のコマンドを実行して、新しいシークレットキーを生成します

bin/rails secret

credentialsの編集

以下コマンドを実行してcredentialsを開きます。

EDITOR='vim' rails credentials:edit -e production

以下を追加してください。

secret_key_base: your_generated_secret

これらの手項を完了した後、再度 rails db:create を実行してみてください。

これで production 環境の secret_key_base が設定され、エラーが解消されるはずです。

rails db:create RAILS_ENV=production

その他のエラー

Can't connect to local MySQL server through socket '/tmp/mysql.sock'

その後、rails db:create すると、MySQLのエラーも出ます。

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

この点いついては、以下の記事でまとめてあります。

Psych::SyntaxError: (<unknown>): found character that cannot start any token while scanning for the next token at line 55 column 13 (Psych::SyntaxError)

このエラーは、MySQLのパスワードを作る時に、% などの文字が入っていると出るエラーぽいです…

% とかは使用しないようにした方が良いですね。。

著:すがわら まさのり, 著:前島 真一, 著:橋立 友宏, 著:五十嵐 邦明, 著:後藤 優一
¥3,751 (2024/11/15 15:27時点 | Amazon調べ)
  • この記事を書いた人

awayuki

音大出身。学生時代はフリーランスでWEB制作・開発しながら、2社で長期エンジニアインターンを経験しました(2年半)。 23卒で、自社開発ベンチャー企業に入社しエンジニア・デザイナーとして働き、2024年1月起業しました! このブログでは、ブログ開設方法・プログラミング・音大からエンジニアになれた方法など書いています。 お仕事依頼はお問い合わせフォームからお問い合わせお願いします。 Zenn

-AWS, Ruby on Rails
-