プロキシサーバーを使う際に役立つ!npm proxyの使い方【初心者向け】

初心者向けにnpm proxyの使い方について解説しています。proxyとは、npm configコマンドでプロキシサーバー設定を行うことができます。開発をする際にインターネットのアクセス制限がかかる場合、プロキシサーバーを使うことでアクセスできます。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

今回は、npm proxyについて解説します。

Node.js環境でプロキシサーバーを利用する場合に参考にしてみてください。

 

なお本記事は、TechAcademyのNode.jsオンライン講座の内容をもとに作成しています。

 

田島悠介

ここではnpm configの機能のひとつ、proxyについての説明をしよう。

大石ゆかり

田島メンター!proxyは何に関連する機能なんですか〜?

田島悠介

これはプロキシサーバーに関する設定を行う部分になるんだ。まずはプロキシが何なのかというところも含めて解説するよ。

 

npm proxyとは

npmとは、Node.jsのパッケージマネージャです。

proxyとは、npm configコマンドで利用できるプロキシサーバー設定のことです。プロキシサーバーとは代理サーバーという意味があります。

インターネットに接続する際、ファイヤーウォールというセキュリティが存在する場合があります。

実際の開発現場で、このファイヤーウォールが存在するために、インターネットでのアクセスが制限されることがあります。そのような場合でも、開発現場ではnpmのパッケージを取得してNode.jsの環境構築をする必要があります。

通常であればファイヤーウォールに阻まれて、外部プログラムを取得できない場合でも、プロキシサーバー経由すればアクセスすることが可能になります。

このような、セキュリティの問題によってアクセス制限された開発現場などでプロキシサーバーを経由した開発を行うことがあります。

 

npm proxyの使い方

npmでプロキシサーバーの設定をするproxyの使い方を説明します。

コマンド

npm config set proxy http://<proxy-host>:<proxy-port>

 

解説

npm configコマンドを入力してproxyを利用します。

npm config set proxyと入力することで、npm config機能の一部であるproxyを利用することが可能です。

1行目の http://<proxy-host>:<proxy-port>では、特にパスワード制限がないプロキシサーバーを利用したい場合に指定する方法です。

<proxy-host>はURLのようなものです。

3桁の数字をドットで4回区切り、記載することも可能です。

例えば、127.0.0.1のように記載できます。

この数字の場合は、IPアドレスと呼ばれ、コンピューターのネットワーク上での住所となります。

<proxy-port>では、ポート番号と呼ばれるサーバー内での入口のいちを示す番号を指定しています。

 

田島悠介

npm config ls -lというコマンドで、現在の状態を確認することができるんだ。

大石ゆかり

えーと、proxyのところは最初の状態では”null”になってますね。

田島悠介

次に実際の例で書き方を見てみよう。

 

[PR] Node.jsで挫折しない学習方法を動画で公開中

npm proxyを実際に使ってみよう

コマンド

npm config set proxy http://user:password@proxy.techacademy.jp:8080

 

解説

npm config set proxy http:// でプロキシサーバーを利用する宣言をしています。

今回はパスワード認証が有るサーバーに接続します。

userの部分で接続するユーザーを指定しています。ユーザー名がuserです。

:passwordの部分で接続するパスワードを指定しています。パスワードがpasswordです。

@proxy.techacademy.jpで接続先のアドレスを指定しています。今回はテックアカデミーのサイトに接続すると仮定します。

:8080で、接続ポートを指定しています。

 

今回は、npm proxyについて解説しました。

実際の開発現場でインターネットアクセスが制限される場合などに、プロキシサーバーを利用したい場合に参考にしてみてください。

 

田島悠介

プロキシの設定を解除するときはnpm config delete proxyで元の状態に戻すことができるよ。

大石ゆかり

今の設定がどうなってたかを見たいときはどうしたらいいですか?

田島悠介

その時は、再びnpm config ls -lでproxyの欄を確認してみよう。

大石ゆかり

なるほど、了解しました。ありがとうございます!

 

また、オンラインのプログラミングスクールTechAcademyでは、Node.jsオンライン講座を開催しています。

Node.jsを使ってWebアプリケーションを開発することができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

この記事を監修してくれた方

中本賢吾(なかもとけんご)アジマッチ有限会社 代表取締役社長

開発実績:PHPフレームワークを利用した会員制SNS・ネットショップ構築、AWSや専用サーバー下でLinuxを使用したセキュアな環境構築、人工知能を利用したシステム開発、店舗検索スマホアプリ開発など。

その他にも地域の職業プログラマー育成活動を行い、2018年には小学生がUnityで開発したオリジナルAndroidアプリをGooglePlayでリリース。ゲームで遊ぶより作ろうぜ!を合言葉に、小学生でも起業できる技術力を育成可能で有ることを証明し続けている。