Перейти к содержимому

Dev Machines

Изолированные среды разработки для сборки и тестирования. Полноценные Linux-окружения на базе Proyecta Cloud.

Proyecta выделяет отдельную машину разработчика (runtime) для каждого проекта. Это изолированный контейнер с полноценным Linux-окружением, в котором твоё приложение работает в процессе разработки.

Когда ты открываешь проект, Proyecta:

  1. Создаёт изолированный контейнер (pod) в облаке
  2. Клонирует твой код из GitHub
  3. Устанавливает зависимости и настраивает окружение
  4. Запускает development server твоего приложения
  5. Отображает живой preview в Builder

Прогресс подготовки среды можно отслеживать в Runtime Status Bar под панелью инструментов.

Статусная панель отображает следующие шаги при запуске:

ШагОписание
Creating podЗапуск изолированного контейнера
Health checkПроверка работоспособности контейнера
Git initКлонирование репозитория
Environment setupУстановка зависимостей (npm, pip и др.)
Starting servicesЗапуск приложения и инфраструктуры
ReadyМашина разработчика полностью готова к работе

Если preview не загружается или машина зависла:

  1. Проверь Runtime Status Bar на наличие сообщений об ошибках
  2. Воспользуйся Terminal для просмотра логов
  3. Если ничего не помогает, попроси AI помочь разобраться в проблеме

Dev machine может включать sidecar-контейнеры с базами данных и сервисами:

  • PostgreSQL — реляционная база данных (порт 5432)
  • PostGIS — PostgreSQL с геопространственными расширениями (порт 5432)
  • Redis — кэш в оперативной памяти (порт 6379)
  • MongoDB — документоориентированная база данных (порт 27017)
  • MySQL — реляционная база данных (порт 3306)
  • MailHog — сервер для тестирования email с веб-интерфейсом (SMTP порт 1025, UI порт 8025)

Запущенные сервисы и их статус можно просмотреть в панели Services.

Dev machines проходят через следующие состояния жизненного цикла:

СостояниеОписание
PendingОжидает создания
InitializingНастройка окружения
RunningАктивна и работает корректно
SuspendedПриостановлена для экономии ресурсов (возобновляется быстро)
ArchivedПомещена в холодное хранилище (восстановление занимает больше времени)
RestoringВосстанавливается из архивного хранилища
FailedОшибка при инициализации или работе — машину можно пересоздать
TerminatedОстановлена окончательно

Машины автоматически приостанавливаются после 60 минут неактивности и архивируются после 24 часов в состоянии Suspended.

Если dev machine недоступна, что происходит с опубликованным приложением?

Backend приложения (serverless-функции и база данных Convex) работает на собственной облачной инфраструктуре Convex и остаётся доступным вне зависимости от состояния dev machine. Однако frontend-файлы приложения раздаются с dev machine — если она приостановлена или заархивирована, посетители будут видеть ошибку 503 до тех пор, пока машина не возобновит работу. Учитывай это для приложений, которые должны оставаться публично доступными: после возобновления машины сайт снова заработает.

Можно ли получить более производительную dev machine?

В настоящее время все dev machines работают с одинаковым выделением ресурсов. Если тебе нужно больше мощности для крупного проекта, обратись в службу поддержки.

Можно ли получить прямой доступ к dev machine?

Да. Используй встроенный Terminal для полного доступа к командной строке среды разработки.