Dev Machines
Изолированные среды разработки для сборки и тестирования. Полноценные Linux-окружения на базе Proyecta Cloud.
Proyecta выделяет отдельную машину разработки (runtime) для каждого проекта. Это изолированный контейнер с полноценным Linux-окружением, в котором твоё приложение работает в процессе разработки.
Как работают dev-машины?
Заголовок раздела «Как работают dev-машины?»Когда ты открываешь проект, Proyecta:
- Создаёт изолированный контейнер (pod) в облаке
- Восстанавливает код проекта в нём
- Устанавливает зависимости и настраивает окружение
- Запускает dev-сервер твоего приложения
- Показывает живой предпросмотр в Builder
Прогресс подготовки можно отслеживать в Runtime Status Bar под панелью инструментов.
Этапы подготовки
Заголовок раздела «Этапы подготовки»В процессе запуска статус-бар отображает следующие шаги:
| Шаг | Описание |
|---|---|
| Creating pod | Запуск изолированного контейнера |
| Health check | Проверка работоспособности контейнера |
| Git init | Клонирование репозитория |
| Environment setup | Установка зависимостей (npm, pip и др.) |
| Starting services | Запуск приложения и инфраструктуры |
| Ready | Dev-машина полностью готова к работе |
Dev-машина работает некорректно. Как это исправить?
Заголовок раздела «Dev-машина работает некорректно. Как это исправить?»Если предпросмотр не загружается или машина кажется зависшей:
- Проверь Runtime Status Bar на наличие сообщений об ошибках
- Попроси AI проверить логи сервиса и отладить проблему — у него есть полный доступ к машине
- Если ничего не помогает, попроси AI помочь разобраться в проблеме
Инфраструктурные сервисы
Заголовок раздела «Инфраструктурные сервисы»Dev-машина может включать sidecar-контейнеры с базами данных и другими сервисами:
- PostgreSQL — реляционная база данных (порт 5432)
- PostGIS — PostgreSQL с геопространственными расширениями (порт 5432)
- Redis — кэш в оперативной памяти (порт 6379)
- MongoDB — документная база данных (порт 27017)
- MySQL — реляционная база данных (порт 3306)
- MailHog — сервер тестирования email с веб-интерфейсом (SMTP-порт 1025, порт UI 8025)
Запущенные сервисы и их статус можно посмотреть в панели Services.
Состояния жизненного цикла
Заголовок раздела «Состояния жизненного цикла»Dev-машины проходят через следующие состояния жизненного цикла:
| Состояние | Описание |
|---|---|
| Pending | Ожидает создания |
| Initializing | Настройка окружения |
| Running | Активна и работает исправно |
| Suspended | Приостановлена для экономии ресурсов (возобновляется быстро) |
| Archived | Хранится в холодном хранилище (восстановление занимает больше времени) |
| Restoring | Восстанавливается из архивного хранилища |
| Failed | Ошибка при подготовке или работе — машину можно пересоздать |
| Terminated | Остановлена окончательно |
Машины автоматически приостанавливаются после 60 минут бездействия и архивируются после 24 часов в приостановленном состоянии.
Часто задаваемые вопросы
Заголовок раздела «Часто задаваемые вопросы»Если dev-машина останавливается, что происходит с опубликованным приложением?
Данные приложения хранятся в платформенном слое данных Proyecta (CMS), который не зависит от dev-машины и остаётся доступным. Однако frontend-файлы приложения раздаются с dev-машины — если она приостановлена или заархивирована, посетители будут видеть ошибку 503, пока машина не возобновит работу. Учитывай это для приложений, которые должны оставаться публично доступными: возобновление работы машины восстанавливает сайт.
Можно ли получить более быструю dev-машину?
В настоящее время все dev-машины работают с одинаковым распределением ресурсов. Если тебе нужно больше мощности для крупного проекта, обратись в поддержку.
Можно ли получить прямой доступ к dev-машине?
Нет. В Builder нет доступа к терминалу или командной оболочке. AI имеет полный доступ к машине от твоего имени — попроси его выполнить команды, проверить логи или просмотреть файлы, и он сообщит результат в чате.