Перейти до вмісту

Домен і HTTPS

Перш ніж відкривати інстанс в інтернет, дайте йому домен і HTTPS. Інсталятор може зробити це за вас, або ж можна поставити Railhook за наявний зворотний проксі.

  1. Спрямуйте домен на сервер

    Створіть для домену запис A з публічною IP-адресою сервера. Порти 80 і 443 мають бути вільні й відкриті в інтернет.

  2. Встановіть із доменом

    Terminal window
    curl -fsSL https://railhook.io/install.sh | bash -s -- --domain hooks.example.com --email [email protected]
Налаштування Значення
TLS-термінатор Caddy на портах 80 і 443 сам отримує й оновлює сертифікат Let’s Encrypt
nginx панелі Переходить на 127.0.0.1:8080, за Caddy
APP_ENV production, тож платформа не запускається з небезпечною конфігурацією
APP_BASE_URL, CORS_ALLOWED_ORIGINS https://<your domain>
Ingress-адреси джерел і адреси тунелів CLI Беруться з APP_BASE_URL, тож провайдери отримують https://<your domain>/ingress/…
DB_SSL_MODE require
LOG_LEVEL WARN
WEBHOOK_TRUSTED_PROXIES 172.16.0.0/12, щоб до журналу аудиту потрапляли справжні IP клієнтів

З APP_ENV=production API відмовляється запускатися, а не працює далі, якщо:

  • секрет досі містить заглушку або типове значення з постачання,
  • WEBHOOK_ALLOW_PRIVATE_IPS=true,
  • SWAGGER_ENABLED=true,
  • CORS_ALLOWED_ORIGINS досі містить localhost.

./railhook doctor перевіряє це заздалегідь. Він також попереджає, якщо APP_BASE_URL досі вказує на localhost або вимкнено EMAIL_ENABLED: без пошти облікові записи створюються вже підтвердженими, а запросити нікого не можна.