ngrok — мощный инструмент, позволяющий открыть доступ к Интернету вашей локальной среды разработки путем создания безопасных туннелей. Это популярный выбор среди разработчиков для тестирования веб-перехватчиков, API и других сетевых сервисов. Однако бесплатная версия ngrok имеет ограничение на запуск только двух туннелей в течение одного клиентского сеанса. В этой статье мы рассмотрим различные методы преодоления этого ограничения и эффективного управления несколькими туннелями. Мы предоставим примеры кода для каждого метода, что позволит вам реализовать их в своих проектах.
Методы управления несколькими туннелями ngrok:
-
Использование нескольких экземпляров клиента ngrok.
Один простой подход — запустить несколько экземпляров клиента ngrok, при этом каждый экземпляр управляет собственным набором туннелей. Этого можно добиться, выполнив следующие действия:# Step 1: Install ngrok (skip if already installed) brew install ngrok # Step 2: Run the first ngrok client instance ngrok http 3000 # Step 3: Open a new terminal window # Step 4: Run the second ngrok client instance ngrok http 4000
Запустив отдельные экземпляры ngrok, вы можете преодолеть ограничение в два туннеля на сеанс клиента.
-
Использование субдоменов:
ngrok позволяет указывать собственные субдомены при создании туннелей. Воспользовавшись этой функцией, вы можете эффективно управлять несколькими туннелями, используя один экземпляр клиента ngrok. Рассмотрим следующий пример:# Create tunnel for web application on port 3000 ngrok http -subdomain=myapp1 3000 # Create tunnel for another application on port 4000 ngrok http -subdomain=myapp2 4000
Назначая каждому туннелю уникальные субдомены, вы можете создавать столько туннелей и управлять ими, сколько вам нужно.
-
Автоматизация управления туннелями с помощью сценариев.
Если вам часто требуется несколько туннелей, запускать каждый из них вручную может быть утомительно. Создавая скрипты, вы сможете автоматизировать процесс и легко управлять всеми своими туннелями. Вот пример использования сценария Bash:#!/bin/bash declare -A tunnels=( ["app1"]=3000 ["app2"]=4000 ["app3"]=5000 ) for app in "${!tunnels[@]}"; do port=${tunnels[$app]} ngrok http -subdomain="$app" "$port" & done
Этот скрипт создает туннели для нескольких приложений, используя соответствующие субдомены и номера портов. Запуск сценария автоматически запустит все туннели одновременно.
Преодоление ограничения двух туннелей в одном сеансе клиента ngrok необходимо для эффективного управления несколькими средами разработки. Используя несколько экземпляров клиента ngrok, субдомены или автоматизируя процесс управления туннелями с помощью сценариев, вы можете создавать и управлять любым количеством туннелей. Эти методы позволяют разработчикам без ограничений тестировать и отлаживать свои приложения, повышая их производительность и эффективность.