teratail header banner
teratail header banner
質問するログイン新規登録
unicorn

Unicornは、汎用のRackアプリケーションサーバ。RackとWebサーバーの機能を併せ持ちます。レスポンス処理や、Nginx単体がRackの機能をサポートしていない事から、一般的にはNginx+Unicorn+Railsの構成を取って用います。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Q&A

解決済

1回答

908閲覧

nodeのバージョンアップをしたいです。

natsumeryuichi

総合スコア21

unicorn

Unicornは、汎用のRackアプリケーションサーバ。RackとWebサーバーの機能を併せ持ちます。レスポンス処理や、Nginx単体がRackの機能をサポートしていない事から、一般的にはNginx+Unicorn+Railsの構成を取って用います。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

0グッド

0クリップ

投稿2022/02/14 04:07

0

0

解決したいこと

unicornでデプロイを試みておりますが、nodeのバージョンが適用されておらずエラーになってしまいます。
解決方法を教えていただけると幸いです。

発生している問題・エラー

下記がエラーコードです。

ruby

1[ec2-user@ip-172-31-11-208 furima-36355]$ rails assets:precompile RAILS_ENV=production 2yarn install v1.22.17 3[1/5] Validating package.json... 4error furima_36355@0.1.0: The engine "node" is incompatible with this module. Expected version "14.17.2". Got "14.19.0" 5error Found incompatible module.

自分で試したこと

% brew upgrade node ==> Upgrading 1 outdated package: node 17.0.1 -> 17.5.0

このコードでアップデートをしましたが、14.19.0になりませんでした。

% nvm ls-remote zsh: command not found: nvm % nodebrew ls-remote zsh: command not found: nodebrew

ネットで調べたコードを試しましたが、コマンドが見つからないと返されてしまいました。

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Eskee

2022/02/14 04:21

私はRubyの門外漢なので、Rubyまわりのことはスルーさせていただきますが、そもそも、どの環境のNode.jsをアップデートしたいのですか? 最初のコードブロックを読んでるとEC2にインストール? されているみたいですね。 でも、その後のbrewを試されてるってことは、macOSですか? クラウドなのかローカルなのか、開発環境なのかそうでないのか、とても曖昧です。 そのあたりはっきりさせていただけると、話が進みやすいかと思います。 また、バージョンアップとのことなので、既に1度はインストールしていると思うのですが、パッケージでインストールしていますか? nvmやnodebrewについては、1度自分で検索してみてください。どちらも、Node.jsのバージョンを切り替えやすくするツールで、パッケージからのインストールしたNode.jsとは別の使い方になりますので注意が必要です。
Eskee

2022/02/14 04:31

ごめんなさい、ひとつ訂正というか補足です。 brewはLinux環境でも使えますね。 ということは、EC2で使いたいのでしょうか? (まあ、EC2でもLinuxとは限りませんが…)
hoshi-takanori

2022/02/14 14:59

「node.js アップデート」で検索して出てきたものを片っ端から試してるように見受けられますが、 OS や node のインストール方法によってアップデートの方法はまったく異なりますので、まずその辺をご確認ください。
natsumeryuichi

2022/02/22 16:51

@Eskee 様 @hoshi-takanori 様 御回答ありがとうございます。 返信が遅れまして申し訳ございません。 無事解決に至りました。 macOSでございまして、開発環境で起きたエラーでした。 EC2上ではnodeのバージョンがv14.19.0でして、ローカル環境ではv14.17.2のバージョンでした。 そのバージョン違いにより、デプロイする際にエラーが出てしまっておりました。 nodeのバージョンをv14.19.0に合わせたことで無事デプロイすることが出来ました。 % brew install nodebrew →インストールできていなかったです。 % nodebrew ls-remote  →コマンドが使えるようになりました。 % vim ~/.zshrc (zshr内にて)export PATH=$HOME/.nodebrew/current/bin:$PATH % source ~/.zshrc →変更内容を保存 vscodeのnodeも直接入力で変更し、デプロイしたところ正常な挙動を確認できました。 ありがとうございました。
guest

回答1

0

自己解決

@Eskee 様
@hoshi-takanori 様
御回答ありがとうございます。
返信が遅れまして申し訳ございません。

無事解決に至りました。
macOSでございまして、開発環境で起きたエラーでした。
EC2上ではnodeのバージョンがv14.19.0でして、ローカル環境ではv14.17.2のバージョンでした。
そのバージョン違いにより、デプロイする際にエラーが出てしまっておりました。
nodeのバージョンをv14.19.0に合わせたことで無事デプロイすることが出来ました。

% brew install nodebrew →インストールできていなかったです。
% nodebrew ls-remote  →コマンドが使えるようになりました。
% vim ~/.zshrc
(zshr内にて)export PATH=$HOME/.nodebrew/current/bin:$PATH
% source ~/.zshrc →変更内容を保存

vscodeのnodeも直接入力で変更し、デプロイしたところ正常な挙動を確認できました。
ありがとうございました。

投稿2022/02/23 02:58

natsumeryuichi

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問