2016-09-30 4 views
0

を登録しませんでした私はエラー:モジュールは自己

at bindings (/node_modules/pg-native/node_modules/libpq/node_modules/bindings/bindings.js:76:44) 

これはに似て見えるかもしれませんが言うとまったく同じエラーがあります。
Error: Module did not self-register.
が、差があることを、私はそう、画像を構築するためにドッキングウィンドウを使用しています私が戻ってnode_modulesを削除して、すべてのコンテナに対してnpmのインストールを再度実行することはできません。
より洗練されたソリューションはありますか?

+0

ノードまたはnpmバージョンを更新しましたか? – abdulbarik

+0

はい、私は最新バージョンを使用していました。私は 'npm rebuild'を実行して修正を見つけました。ご協力いただきありがとうございます。 – raviabhiram

答えて

0

ドッカーの作成時にこのエラーが発生しました。また、私のドッカーの作成では、私は現在のフォルダをマウントしていた。この問題を解決するために、ノードモジュールをnpm rebuildで再構築しました。

0

Dockerの利点の1つは、画像をアップグレードしてコンテナを交換するのが簡単であるということです。あなたはすべて同じイメージから起動するノードのアプリの束を持っている場合:

FROM node 

は、次に、あなただけのあなたのイメージを再構築する必要があると彼らはノードベースイメージの最新バージョンを使用します(現在は3.10.3 NPMを持っています) 。プロダクション以外の環境では、コンテナを停止して新しいイメージから新しいものを実行してください。プロダクションでは、rolling upgrades in swarm modeをご覧ください。

理想的には、変更をコミットし、新しいイメージを作成し、実行中のコンテナを置き換える自動ワークフローに取り組むべきです。実行中のコンテナのメンテナンスは必要ありません。使い捨てにすることを意図しています。

+0

Eltonに感謝します。 npm rebuildを使ってノードをインストールした後にリビルドを行うことが解決策であり、エラーを修正したと考えました。 – raviabhiram

関連する問題