Переменные окружения
Переменные окружения
Глобальные
Имя | Описание |
---|---|
TUNA_CONFIG | Путь к конфигурационному файлу |
TUNA_LOG_LEVEL | Уровень логирования: debug, info, warn, error, fatal (умолчание "info") |
TUNA_LOG_FORMAT | Формат логирования: text, json (умолчание "text") |
Общие
Имя | Описание |
---|---|
TUNA_PORT | Порт или адрес назначения (например, 8080 или 10.0.0.10:5432 ) |
TUNA_TOKEN | Токен для создания туннеля |
TUNA_LOCATION | Регион подключения (nl или ru ) |
Для HTTP туннелей
Имя | Описание |
---|---|
TUNA_BASIC_AUTH | Добавить базовую аутентификацию (например, user:pass) |
TUNA_CIDR_ALLOW | Отклонять соединения, которые не соответствуют заданным CIDR |
TUNA_CIDR_DENY | Отклонить соединения, соответствующие заданным CIDR |
TUNA_CORS | Включить добавление CORS заголовков и автоматическую обработку OPTIONS запросов |
TUNA_DOMAIN | Зарезервированный домен |
TUNA_FILE_SERVER | Путь к каталогу для публикации файлов по http |
TUNA_FILE_SERVER_SPA | Путь к каталогу для публикации SPA сайта |
TUNA_HTTPS_REDIRECT | Перенаправлять запросы на https (true или false ) |
TUNA_INSPECT | Включить или отключить инспектор запросов (true или false ) |
TUNA_INSPECT_ADDR | Задать адрес для инспектора запросов |
TUNA_KEY_AUTH | До бавить ключ аутентификации, переданный в заголовке X-Token |
TUNA_POLICY_FILE | Путь файлу конфигурации с правилами (по умолчанию .tuna.yml ) |
TUNA_QR_CODE | Сгенерировать и показать QR-код |
TUNA_RATE_LIMIT | Ограничьте количество запросов к вашему приложению (например, 20 для 20 запросов/сек) |
TUNA_REQUEST_HEADER | Добавление заголовков для передачи локальному сервису (например, host:tuna.am ) |
TUNA_RESPONSE_HEADER | Добавление заголовков для передачи клиенту (например, env:test ) |
TUNA_SUBDOMAIN | Зарезервированный поддомен |
TUNA_TLS_SKIP_VERIFY | Игнорировать проверку TLS |
TUNA_VERIFY_WEBHOOK | Проверить, подписаны ли вебхуки этим поставщиком (например, gitlab) |
TUNA_VERIFY_WEBHOOK_SECRET | Секрет, используемый провайдером для подписи вебхуков, если таковые имеются |
TUNA_WEBDAV | Путь к каталогу для публикации файлов по WebDAV |
Для TCP туннелей
Имя | Описание |
---|---|
TUNA_TCP_PORT | Номер з арезервированного порта или алиас |
TUNA_QR_CODE | Сгенерировать и показать QR-код |
Для SSH туннелей
Имя | Описание |
---|---|
TUNA_TCP_PORT | Номер зарезервированного порта или алиас |
TUNA_SSH_AUTH | Задать статические username/password |
TUNA_SSH_PASSWORD_AUTH | Включить или выключить аутентификацию с помощью логин/пароль |
TUNA_RECORD_SESSION | Запись SSH сессий |
Для TRIGGER туннелей
Имя | Описание |
---|---|
TUNA_TCP_PORT | Номер зарезервированного порта или алиас |
TUNA_TRIGGER_SMTP_USERNAME | Имя пользователя для подключения по SMTP |
TUNA_TRIGGER_SMTP_PASSWORD | Пароль пользователя для подключения по SMTP |
TUNA_TRIGGER_WEBHOOK_SECRET | Секрет, который будет проверяться со значением заголовка X-Webhook-Secret |
Создание и управление сервисами
Имя | Описание |
---|---|
TUNA_SERVICE_NAME | Имя сервиса |
TUNA_SERVICE_INSTALL_USER | Пользователь от под имени которого будет запускаться сервис |
TUNA_SERVICE_INSTALL_PASSWORD | Пароль при указании иного пользователя (только Windows) |
Множественный запуск туннелей
Имя | Описание |
---|---|
TUNA_START_TUNNELS_FILE | Путь файлу конфигурации с туннелями (по умолчанию .tuna.yml ) |
TUNA_START | Имя туннеля для запуска |
TUNA_START_TAGS | Теги туннелей для запуска |
TUNA_START_ALL | Запуск всех туннелей |
Обнаружение портов
Имя | Описание |
---|---|
TUNA_DETECT_SECONDS | Промежуток времени выделенный на обнаружение порта |
Работа с direnv
direnv — это менеджер переменных среды для терминала, он позволяет автоматически загружать и выгружать переменные среды в зависимости от текущего каталога – это позволяет иметь переменные среды, специфичные для каждого проекта, над которым вы работаете.
Перед каждым приглашением direnv проверяет наличие файла .envrc
в текущем и родительском каталогах и если файл существует, он загружается в подшаблон bash, и все экспортированные переменные затем захватываются direnv, а затем становятся доступными для оболочки.
Перед началом использ ования direnv, его необходимо установить, инструкция по установке доступна в официальной документации, после этого в каталоге проекта нужно создать файл .envrc
с настройками tuna, например:
export TUNA_PORT=8080
export TUNA_SUBDOMAIN=my-project
При переходе в каталог проекта и вызове команды tuna http
у вас будет создаваться туннель с учетом настроек из файла .envrc
:
% tuna http
INFO[13:00:00] Welcome to Tuna
INFO[13:00:00] Account: test (Paid till 05.04.2024)
INFO[13:00:00] Web Interface: http://127.0.0.1:4040
INFO[13:00:00] Forwarding https://my-project.ru.tuna.am -> 127.0.0.1:8080