今までローカル環境で開発したサービスを外部公開するには、ngrokやlocaltunnelなどのサービスを利用していましたが、VSCodeの拡張機能「Local Port Forwarding」を使うと、簡単にローカル環境を外部公開できるようになりました。
使ってみたら本当に簡単に外部公開できたので、その使い方を紹介します。
Local Port Forwardingを使うのに必要なもの
「Local Port Forwarding」を使うためには、以下のものが必要です。
- VSCode v1.82以上
- GitHubアカウント
- アプリケーションの開発環境
- 今回はNode.jsのアプリケーションを想定しています。(他の言語でも問題ないです)
Local Port Forwardingを使う上での準備
- VSCodeでGitHubアカウントでログインする
VSCodeを起動し、アカウントボタンをクリックして、GitHubアカウントでログインします。ログイン済みの場合は下図の様になります。もしまだログインしていないようでしたら「Backup and Sync Settings…」をクリックして、GitHubアカウントでログインしてください。
これで基本的には準備は完了です。
Local Port Forwardingの使い方
それでは、実際にLocal Port Forwardingを使ってみます。
ローカル環境で外部公開したいサービスを起動する
まずは公開したいサービスをローカル環境で起動します。
- プロジェクトの作成
ローカルで開発しているアプリケーションを起動します。今回は、ローカルで起動したNode.jsを外部公開してみます。次のコマンドを実行してNode.jsプロジェクトを作成します。
コマンド実行
mkdir node-app
cd node-app
npm init -y
npm install express
code .
- サーバーの作成
次のコードをindex.js
に記述します。
index.js
const express = require('express')
const app = express()
const port = 8080
app.get('/', (req, res) => res.send('Hello World!'))
app.listen(port, () => console.log(`listening at http://localhost:${port}`))
- サーバーの起動
次のコマンドを実行して、サーバーを起動します。
コマンド実行
node index.js
- ブラウザでアクセス
ブラウザでhttp://localhost:8080
にアクセスして、Hello World!
が表示されることを確認します。
ローカル環境で外部公開したいサービスが起動しました。
Local Port Forwardingの設定
それでは、このローカル環境で外部公開したいサービスをLocal Port Forwardingで設定してみます。
- Local Port Forwardingの設定
VSCodeのTerminalエリアにある「PORTS」をクリックして「Local Port Forwarding」の設定を開きます。
下図の箇所に公開したいローカル環境のポート番号を入力します。今回は8080
を入力します。
初回はGitHubアカウントでの認証が必要です。次のような画面が表示されたら「Authorize Dev Tunnels」をクリックします。
- ローカル環境の外部公開
次のように「Forwarded Address」の箇所にURLが表示されます。このURLにアクセスすると、ローカル環境で起動したサービスにアクセスできます。
https://<ランダムな文字列>-<ポート番号>.asse.devtunnels.ms
の形式でURLが表示されます。
これでローカル環境のサービスを外部公開できました。
外部公開されたサービスにアクセスする
公開されたURLにアクセスしてみます。
- ブラウザでアクセス
ブラウザを開いて、生成されたURLにアクセスします。
https://<ランダムな文字列>-<ポート番号>.asse.devtunnels.ms
- GitHubアカウントでログイン
初回のアクセス時にはGitHubアカウントでのログインが必要です。次のような画面が表示されたら、GitHubアカウントでログインしてください。
- アクセス確認
次のようにMicrosoftの画面が表示され開発者トンネルにアクセスする確認の画面が表示されます。「続行」をクリックします。
次のようにローカル環境で起動したサービスにアクセスできることを確認します。以降は、このURLにアクセスするとローカル環境で起動したサービスにアクセスできます。
外部公開の停止
外部公開を停止するには、次の手順で停止します。
- Local Port Forwardingの停止
VSCodeのTerminalエリアにある「PORTS」をクリックして「Local Port Forwarding」の設定を開き、さきほど設定したポート番号の箇所にある「x」ボタンをクリックします。
これで外部公開が停止されます。
このようにVSCodeの「Local Port Forwarding」を使うと、簡単にローカル環境で開発したサービスを外部公開できるようになりました。
GitHubアカウントとVSCodeがあれば、誰でも簡単にローカル環境で開発したサービスを外部公開できるようになりましたね。オススメです。
参考
https://code.visualstudio.com/docs/editor/port-forwarding