【エングロック】

ngrok とは?

💡 ローカルのサーバーを一瞬で世界に公開するトンネル職人
📌 このページのポイント
ngrok のトンネリングの仕組み ローカルPC localhost:3000 ngrok クライアント 暗号化トンネル HTTPS対応 ngrok サーバー abc123.ngrok.io 公開URL発行 主な利用シーン Webhookのテスト モバイルアプリの確認 クライアントへのデモ
ngrokのトンネリングのイメージ
ひよこ ひよこ

ngrokって何ができるツールなの?

ペンギン先生 ペンギン先生

自分のパソコンで動いているWebサーバーに、インターネットからアクセスできるURLを作ってくれるツールだよ。たとえば localhost:3000 で動いているアプリに、https://abc123.ngrok.io みたいなURLでどこからでもアクセスできるようになるんだ

ひよこ ひよこ

どんなときに使うの?

ペンギン先生 ペンギン先生

一番多いのはWebhookのテストだね。StripeLINEGitHub Webhookなど外部サービスが「こっちにデータを送るよ」という機能を使うとき、送り先に公開URLが必要なんだ。ngrokがあればデプロイしなくてもローカルで受け取れるよ

ひよこ ひよこ

使い方は簡単なの?

ペンギン先生 ペンギン先生

めちゃくちゃ簡単だよ。ngrok http 3000 とコマンドを打つだけ。すると公開URLが表示されて、すぐに使えるんだ。ブラウザで http://127.0.0.1:4040 にアクセスすると、受信したリクエストの詳細を確認できるインスペクター画面も見られるよ

ひよこ ひよこ

セキュリティは大丈夫なの?

ペンギン先生 ペンギン先生

無料プランでもHTTPSが使えるし、有料プランではBasic認証OAuth認証をトンネルにかけることもできるよ。URLはランダムに生成されるから、知らない人がアクセスする可能性は低いけど、機密データを扱うときは認証をかけておくのが安全だね

ひよこ ひよこ

無料で使い続けられるの?

ペンギン先生 ペンギン先生

無料プランでは1つのトンネルが使えて、URLは起動するたびに変わるよ。有料プランだと固定ドメインが使えたり、同時に複数のトンネルを開けたりするんだ。実はngrokと同じようなツールにCloudflare TunnelやTailscale Funnelもあって、用途によっては無料の選択肢も増えてきているよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ngrok」って出てきたら「ローカルのサーバーを一時的にインターネットに公開するツール」と思えればだいたいOK!
📖 おまけ:英語の意味
「ngrok」 = 造語
💬 明確な語源は公表されていないけど、「network grok(ネットワークを深く理解する)」という説があるよ。grokはSF小説で「直感的に理解する」という意味の造語だね
← 用語集にもどる