Установка
Запустите 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 stable3. Создайте администратора (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