仕事や買い物などで調査や比較をした情報で、読者のスキルアップにつながる情報を発信しています。技術情報(テックブログ)、書評、子育てお役立ち情報、自身の体験談などがメインです。itLinkedInPocketCopyaltJSのライブラリ(elm)を導入するのにnpmを使っており、npmの設定の優先順位の勘違いにより、プロキシ設定でハマったので他にも同じように困っている人の助けになればと思っています。環境変数ユーザー別設定ファイル(~/.npmrc)グローバル設定ファイル(インストールディレクトリのnpmrc)ビルトインの設定ファイル(ビルド時に導入されるファイル)デフォルト設定(npm内部に含まれる設定)2.の環境変数はもっと優先順位が低いと勘違いしていて、3.のユーザー別設定ファイルを変更していて全然反映されずにハマっていました。/home/myname/elm/npm-debug.logどうやらelmのダウンロード先とSSLのコネクションが張れずにダウンロードできないことが原因で失敗しているようです。set(もしくは.npmrc)で以下の設定をするproxy→http://proxyserver:porthttps-proxy→http://proxyserver:portregistry→http://registry.npmjs.org/※proxyserver、portは実際の環境に合わせて変更する。.npmrcに設定を書き込むも状況は変わらず。他にも、strict-sslの設定などもありましたが、状況は変わらず。環境変数HTTPS_PROXYを書き換える。具体的には次のように設定する。HTTPS_PROXY=http://proxyserver:portWeb検索結果の3つの設定値はデフォルトで問題なかったので、.npmrcファイルは不要で、環境変数の書き換えのみでうまくいきました。実行結果を見るとDownloadがうまくいっているのが分かります。自分の環境では、環境変数にproxy関係で多く設定されており、npmはnpmrcではなく環境変数を見に行っていたようです。環境変数HTTPS_PROXYの設定値はhttps://となっており、そこでSSLコネクションがうまくいっていなかったのが原因だと思います。npmの設定はnpmrcが優先されると思いこんでいましたが、環境変数の方が優先される仕様のようです。自分の環境で設定されていた環境変数を参考のために記述します。proxyhttp_proxy=http://proxyserver:portftp_proxy=http://proxyserver:portFTP_PROXY=http://proxyserver:porthttps_proxy=http://proxyserver:portHTTPS_PROXY=https://proxyserver:portno_proxy=localhost,127.0.0.0/8,172.27.0.0/16,129.249.0.0/16HTTP_PROXY=http://proxyserver:port思っていたよりも多かったので、npmで設定が反映されずに困っている人は、一度環境変数を確認してみるのも良いかもしれません。Online】オンプレサーバからAWSへの移行を考えている方も結構いるのではないでしょうか。コメントをキャンセルメールアドレスが公開されることはありません。*ウェブサイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。この記事のトラックバックURLプロフィール訪問いただきありがとうございます。(2016年:長女誕生、2019年:長男誕生)某企業で組み込みソフトエンジニアをやってます。買い物でも勉強でも調査や比較することから入ります。これまでの経験で得た、子育てお役立ち情報や自身や読者のスキルアップにつながる情報などを発信できたらと思いブログを始めました。このブログを始める前の技術情報は下記にも記載されています。https://qiita.com/tomluckよろしくお願いします。業務ではオンプレサーバでWebアプリケーションを管理しています。Online】オンプレサーバからAWSへの移行を考えている方も結構いるのではないでしょうか。