Skitflow

Установка

Запустите Skitflow на вашем сервере за несколько минут с помощью этого простого руководства по установке.

Выполните следующие шаги для установки Skitflow на ваш сервер и развёртывания первого приложения:

Требования

  • Linux-сервер (VPS или выделенный) с root-доступом.
  • 4 ГБ RAM минимум (8 ГБ рекомендуется для сборок).
  • 30 ГБ дискового пространства минимум.
  • Публичный IP-адрес и доменное имя, указывающее на него (для HTTPS).

Протестированные дистрибутивы Linux

  • Ubuntu 24.04 LTS
  • Ubuntu 22.04 LTS
  • Ubuntu 20.04 LTS
  • Debian 12
  • Debian 11
  • Fedora 40

Скрипт установки требует root и использует синтаксис Bash. Всегда передавайте через bash, а не sh — в Ubuntu и Debian sh по умолчанию использует dash, который не поддерживает Bash-массивы.

Установка Skitflow

1. Направьте домен на сервер

Перед установкой направьте DNS-запись A (или CNAME) на публичный IP сервера. Skitflow рассчитан на работу через Traefik с настоящим доменом и TLS: домен — это ваш основной адрес, а IP:3000 — только bootstrap-шаг.

Если планируете сертификаты Let's Encrypt, также задайте ACME email до запуска установщика (иначе сертификаты не будут выданы):

export ACME_EMAIL=[email protected]

2. Запустите установщик

curl -sSL https://skitflow.cloud/install.sh | sudo bash

Скрипт установит Docker (если отсутствует), настроит PostgreSQL, Redis, Traefik и управляющий контур Skitflow.

В конце вывода установщик печатает одноразовый SETUP TOKEN (зелёная строка после «SETUP TOKEN:»). Он понадобится на следующем шаге — сохраните вывод терминала.

По умолчанию установщик разворачивает канал canary, который получает частые обновления и может быть менее стабилен. Для production используйте стабильный канал:

curl -sSL https://skitflow.cloud/install.sh | sudo bash -s -- --channel stable

3. Создайте администратора (bootstrap через IP:3000)

Сразу после установки Skitflow временно доступен по адресу http://IP-вашего-сервера:3000. Откройте его в браузере — попадёте на страницу первичной настройки. Кроме имени, email и пароля форма запросит Токен установки — вставьте SETUP TOKEN из вывода установщика.

Токен установки — намеренная защита: без него любой, кто сканирует интернет на открытые IP:3000, мог бы зарегистрироваться первым и захватить инстанс в промежутке между установкой и вашим первым заходом. Токен печатается только в терминале сервера — не передавайте его никому.

Доступ по IP:3000 временный и ОБЯЗАТЕЛЬНО должен быть закрыт. Панель на голом HTTP без TLS не защищена Traefik и открыта всему интернету. После выполнения шага 4 (домен + HTTPS) порт 3000 нужно закрыть — см. шаг 6.

Создание первого администратора на свежей установке автоматически запускает 30-дневный Enterprise-триал: включены все enterprise-функции (SSO, SCIM, пользовательские роли, журналы аудита, white-labeling, реплицируемое хранилище) и до 3 подключаемых серверов (сам хост платформы не считается). По окончании триала инстанс продолжает работать без enterprise-функций; лицензионный ключ открывает их насовсем.

4. Настройте домен и HTTPS через Traefik

В панели управления настройте домен (тот, что направлен на сервер в шаге 1), чтобы Traefik выпустил сертификат Let's Encrypt и открывал Skitflow по https://ваш-домен.ru. Убедитесь, что HTTPS работает в браузере, прежде чем продолжать — если закрыть порт 3000 раньше, вы потеряете доступ.

5. SMTP и прочие настройки

Настройте SMTP для email-уведомлений и приглашений, а также остальные параметры (удалённые серверы, AI gateway, OAuth) по необходимости.

6. Закройте порт 3000 — обязательно, не опционально

Как только домен с HTTPS заработал, закройте прямой доступ к панели по IP:3000 и переключите auth origin на домен одним шагом (иначе приглашения участников продолжат указывать на закрытый IP:3000):

docker service update \
  --publish-rm "published=3000,target=3000,mode=host" \
  --env-add BETTER_AUTH_URL=https://ваш-домен.ru skitflow

Это обязательный шаг безопасности, а не рекомендация: пока порт 3000 открыт, панель управления остаётся доступной по незашифрованному HTTP в обход Traefik и TLS.

Временно вернуть доступ (например, для восстановления при сломанном домене):

docker service update --publish-add "published=3000,target=3000,mode=host" skitflow

Перед закрытием порта 3000 убедитесь, что https://ваш-домен.ru открывает панель. Если домен или сертификат настроены неверно, вы потеряете доступ к инстансу, пока порт не будет возвращён с серверной консоли.

Обновление

Чтобы обновить Skitflow до последней версии:

curl -sSL https://skitflow.cloud/install.sh | sudo bash -s -- update
Панель управления Skitflow после установки

On this page