質問をすることでしか得られない、回答やアドバイスがある。

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

ただいまの
回答率

89.70%

npmを使ったモジュールインストール時にモジュールのダウンロードエラーが発生:ダウンロードのパスがおかしい。

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 2,709

ringoing888

score 12

npmを使ってとある開発環境でコーディングしたソースを別の開発環境にgit clone → npm installを行いました。ここで、エラーが出て前に進めずにおります。

環境は以下

  • CentOS release 6.7
  • node 6.11.0(6.10.3もトライ済み)
  • npm 5.0.3(4.5.3もトライ済み)

怪しいなと思っている部分は以下の2点。

  • node-sassのパッケージダウンロードでダウンロードが出来ないエラー
    →ダウンロードのパスが明らかにおかしい。
> node-sass@4.5.3 install /home/vagrant/centralgrrow/node_modules/node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/vhttps://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz/linux-x64-48_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/vhttps://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz/linux-x64-48_binding.node":

https://github.com/sass/node-sass/releases/download/vhttps://registry.npmjs.org/
                                                     ↑ここ
node-sass/-/node-sass-4.5.3.tgz/linux-x64-48_binding.node

  • いくつかのパッケージでregistryがローカルのレポジトリを指していてダウンロードできていない。
    ※nodeとnpmの初回インストール時に--registry オプションで指定したURLになっている。
    ※WARNでSKIPPING OPTIONAL DEPENDENCYなのでとりあえずはクリティカルではない?
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: nopt@http://192.168.1.100:4873/nopt/-/nopt-3.0.6.tgz (node_modules/node-gyp/node_modules/nopt):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: request to http://192.168.1.100:4873/nopt/-/nopt-3.0.6.tgz failed, reason: connect EHOSTUNREACH 192.168.1.100:4873
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: resolve@http://192.168.1.100:4873/resolve/-/resolve-1.1.7.tgz (node_modules/remap-istanbul/node_modules/resolve):

この問題についてアドバイスを頂きたいです。

$ npm config set registry

とかはやってみました。

$ npm update -g npm
$ npm outdated -g
$ npm update -g

勿論アップデートもやってみました。

後はnpmのバージョンを落として(4.5.3)にしてもやってみました。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

check解決した方法

0

あきらめて別の環境を新規に構築しました。。。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

キャッシュは削除してみましたか?
これで治ったことが何度かあります。

npm cache clean

追記

npm config ls -l


でchache = にディレクトリが書かれています。

公式のnpmトラブルシューティング↓。
https://docs.npmjs.com/troubleshooting/try-the-latest-stable-version-of-node


追記
privateリポジトリを参照しているのですかね?
使ったことないのですが

${home}/.npmrc
の
registry=http://192.168.1.100:4873


があったら削除すればうまくいくかもしれません。
参考↓
http://qiita.com/Quramy/items/2d019474bdcf692f7c1a


追記、dockerでcentos6.9ですけど同じようなバージョンで試してみました

[root@4d92eff12dd7 ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
[root@4d92eff12dd7 ~]# npm --version     ## 古いから上げる
3.10.10
[root@4d92eff12dd7 ~]# npm update -g npm  # npmのバージョンを上げる
[root@4d92eff12dd7 ~]# npm --version
5.0.3
[root@4d92eff12dd7 ~]# node --version
v6.11.0

[root@4d92eff12dd7 ~]# cd /root/
[root@4d92eff12dd7 ~]# ls
anaconda-ks.cfg  install.log  install.log.syslog
[root@4d92eff12dd7 ~]# ls -la
total 56
dr-xr-x--- 1 root root 4096 Jun 23 06:36 .              ## npmrcが無いだと...
drwxr-xr-x 1 root root 4096 Jun 23 06:34 ..
-rw------- 1 root root  324 Jun 23 06:36 .bash_history
-rw-r--r-- 1 root root   18 May 20  2009 .bash_logout
-rw-r--r-- 1 root root  176 May 20  2009 .bash_profile
-rw-r--r-- 1 root root  374 Jun 23 06:36 .bashrc
-rw-r--r-- 1 root root  100 Sep 23  2004 .cshrc
drwxr-xr-x 5 root root 4096 Jun 23 06:36 .nvm
drwxr----- 3 root root 4096 Jun 23 06:35 .pki
-rw-r--r-- 1 root root  129 Dec  3  2004 .tcshrc
-rw------- 1 root root 2687 Jun  5 02:56 anaconda-ks.cfg
-rw-r--r-- 1 root root 7281 Jun  5 02:56 install.log
-rw-r--r-- 1 root root 1680 Jun  5 02:56 install.log.syslog


### 試しにインストール
[root@4d92eff12dd7 test2]# npm install node-sass --save
npm WARN prefer global node-gyp@3.6.2 should be installed with -g

> node-sass@4.5.3 install /root/test2/node_modules/node-sass
> node scripts/install.js

Cached binary found at /root/.npm/node-sass/4.5.3/linux-x64-48_binding.node

> node-sass@4.5.3 postinstall /root/test2/node_modules/node-sass
> node scripts/build.js

Binary found at /root/test2/node_modules/node-sass/vendor/linux-x64-48/binding.node
Testing binary
Binary is fine
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN test2@1.0.0 No description
npm WARN test2@1.0.0 No repository field.

+ node-sass@4.5.3
added 180 packages in 7.304s     # 問題なし

中身見てなかった。

[root@4d92eff12dd7 test2]# npm config ls
; cli configs
metrics-registry = "https://registry.npmjs.org/"
scope = ""
user-agent = "npm/5.0.3 node/v6.11.0 linux x64"

; node bin location = /root/.nvm/versions/node/v6.11.0/bin/node
; cwd = /root/test2
; HOME = /root
; "npm config ls -l" to show all defaults.

[root@4d92eff12dd7 test2]#

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/06/23 15:57

    追記しました。
    centos6.9、nvmでnodeをインストールの2点が違うと思いますが、他は同じ環境だと思います。

    私の環境ではnpm configのregistry自体が見当たらないですね

    キャンセル

  • 2017/06/23 16:40 編集

    ご確認頂き有難うございます。
    わざわざ再現頂きありがとうございます。

    これはつまり、うまく行ったぜって事ですよね?
    自分も他の環境では、普通にうまく行ってる環境もあるんです。
    この環境でのみ発生しているのと、やはりregistryの設定がどっかに勝手に仕込まれてるんじゃないかと言うのが一番自分としては怪しいと思っています(そんな事があるのかどうか不明ですが)。ただその設定らしきものがどこにも見つからず。

    ちなみに、nodeのインストールはnodebrewでインストールしていて、grunt-cliとかをインストールする時にregistryとか使ってインストールしてます。.npmrcは多分なんですけど、npm set registry うんたらとかやって設定をすると作成されるんじゃないですかね?自分ははじめから有りましたけど。
    .npmrc削除してみるか。。

    キャンセル

  • 2017/06/23 16:43

    ほぼほぼ、再インストールの手順に近いことをやっているのでなんかnpmの外側に何か有るんじゃないかとかそんな良くわからない状態を疑っています。
    nodebrewでnodeのバージョンを変えてやっても変わらない。
    →node毎で.nodebrewの中にそれぞれのバージョンごとに設定とか環境入ってるはずなので、どれでやっても起こる。って事はもう環境変数とか、なんか/etcとかにnodeの設定とか有るのかなとか。

    キャンセル

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

  • ただいまの回答率 89.70%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る

  • トップ
  • Node.jsに関する質問
  • npmを使ったモジュールインストール時にモジュールのダウンロードエラーが発生:ダウンロードのパスがおかしい。