Next.jsで「no_secret」のエラー発生

Nextjsで実装していたときに、

Dockerコンテナで立ち上げて、

検証環境に色々と試していたのだが、

上記の画像のようなエラーが発生した。

最初に設定情報をこの環境に入れるのを忘れて、

その後に調整してコンパイルしたのだが、

最初にコンパイルした時のゴミが残り続けた影響な気もする。

今後のために

個人的な備忘録としてこの記事に残します。

エラー内容

エラーに関しては、

このようなエラー表示になっていた。

実際のログを確認すると、

以下のようにログが表示されていた。

no_secret Please define a `secret` in production. MissingSecret 
[MissingSecretError]: Please define a `secret` in production.

設定ファイル周りで、secretファイルは、

開発環境などでは問題なく設定・動作しているので、

基本的に影響はないとは思うが、

1つの調整方法として、

以下を試したのでメモ。

ファイル

pages/api/auth/[...nextauth].js

調整箇所

直接、secret設定を追加。

ただし、開発環境では、なくても動いたので不要なのかもしれない

export const authOptions = {
  :
  secret: process.env.NEXTAUTH_SECRET
}

参考

再コンパイルが反映されていなかった?

プロセス常駐していたのだが、

こちらを停止して、

色々と確認している中で、

npm run dev

で試しにコンパイルではなく、

シンプルに立ち上げて確認しようとすると、

Error: listen EADDRINUSE: address already in use :::3000

というエラーが発生した。

そのため、

使用ポートを確認するコマンド

lsof -i :3000

こちらでプロセスIDを確認して、

kill -9 [process-id]

でプロセスを終了させて、

再度、起動させるとうまく挙動した。

どちらかというと、

こちらの3000ポートが、

停止しても残り続けていたのが影響していたのかもしれない。

ピックアップ

こちらもおすすめ

初心者向けの色々な情報はあるけれど、

  • 無料でお試しができるスクール
  • ホームページなど簡単に作成できる
  • 組織で使いたいサービス

について、

少しでも試して良いものがあると、

それを活用することで学習や業務などが効率化できるので、

おすすめのサイトなどをいくつか紹介しておきます

おすすめ書籍

広告

おすすめ記事