curl一つでlocalhostを公開する — Portal Tunnel
ポータルとトンネル
AIを用いれば、どこでもプログラムを作成できます。しかし、いかに優れたプログラムであっても、通常は自身のコンピュータ、すなわちlocalhost上でのみ稼働します。
それを外部に公開するためには、通常、ルーター設定、ファイアウォール規則、パブリックIP設定、トンネル設定といった複雑な手順を経る必要があります。
もし、これらすべてが単一のコマンドラインで解決できるとしたらどうでしょうか。
Portalのトンネルを使用すれば、ローカルのプログラムをたった一つのコマンドでパブリックサービスに変換できます。
localhostを公開する
まず、プログラムをローカルで実行します。
次に、必要なのはこの単一の行だけです。
1curl -fsSL portal.gosuda.org/tunnel | PORT=3000 NAME={app name} sh
- アプリケーションがパブリックにアクセス可能になったことを確認します。
- {app name}.portal.gosuda.org
マルチテナンシー
Portalは、単一のサービスではなく、オープンなネットワークとして設計されています。誰でもポータルリレーを運用でき、単一のアプリケーションは、冗長性または地理的な分散のために、複数のポータルに同時に接続できます。
1# 複数のポータルリレーに一度に公開する
2curl -fsSL http://portal.gosuda.org/tunnel | \
3PORT=3000 \
4NAME={app_name} \
5RELAY_URL=portal.thumbgo.kr,portal.iwanhae.kr,s-h.day,portal.lmmt.eu.org \
6sh
アクティブなパブリックポータルのリストは、Portal Listアプリケーション(それ自体がPortalネットワーク上でホストされています)で維持されています。https://portal-list.portal.gosuda.org/
これは、特定のプロバイダーやインフラストラクチャに依存しない、真にパーミッションレスな公開環境を意味します。
他のサービスとの比較
ngrokやcloudflaredのようなツールは、ローカルサービスをパブリックインターネットに公開するために広く使用されています。しかし、Portalは設計思想と使用モデルの両方において根本的に異なります。
ngrokとcloudflaredは、集中型のSaaSベースのトンネリングサービスです。これらは、使用前にアカウント作成、トークン発行、バイナリのインストール、および設定を必要とし、ユーザーは必然的にサービスポリシーと価格設定モデルに従うことになります。
対照的に、Portal Tunnelは以下の特徴を持ちます。
- インストールなしで一行で実行
- アカウントやトークンなしで即座に公開
- 誰でもリレーを運用可能
- 単一のアプリケーションが複数のポータルに同時に接続可能
- 特定のベンダーへの依存がない純粋なネットワークアーキテクチャ
これらの特性により、Portal Tunnelは従来のトンネリングサービスとは完全に異なるカテゴリーに位置付けられます。