Máquinas de Desarrollo
Entornos de desarrollo aislados para construir y probar. Entornos Linux completos impulsados por Proyecta Cloud.
Proyecta aprovisiona una máquina de desarrollo (runtime) dedicada para cada proyecto. Es un contenedor aislado con un entorno Linux completo donde tu app se ejecuta durante el desarrollo.
¿Cómo funcionan las máquinas de desarrollo?
Sección titulada «¿Cómo funcionan las máquinas de desarrollo?»Cuando abres un proyecto, Proyecta:
- Crea un contenedor aislado (pod) en la nube
- Restaura el código de tu proyecto en él
- Instala las dependencias y configura el entorno
- Inicia el servidor de desarrollo de tu app
- Muestra una vista previa en vivo en el builder
Puedes ver el progreso del aprovisionamiento en la Barra de Estado del Runtime debajo de la barra de herramientas.
Pasos de Aprovisionamiento
Sección titulada «Pasos de Aprovisionamiento»La barra de estado muestra estos pasos durante el inicio:
| Paso | Descripción |
|---|---|
| Creating pod | Levantando el contenedor aislado |
| Health check | Verificando que el contenedor esté en ejecución |
| Git init | Clonando tu repositorio |
| Environment setup | Instalando dependencias (npm, pip, etc.) |
| Starting services | Iniciando tu app e infraestructura |
| Ready | Tu máquina de desarrollo está completamente en línea |
Mi máquina de desarrollo tiene problemas. ¿Cómo lo soluciono?
Sección titulada «Mi máquina de desarrollo tiene problemas. ¿Cómo lo soluciono?»Si la vista previa no carga o la máquina parece bloqueada:
- Revisa la Barra de Estado del Runtime para ver mensajes de error
- Pídele a la IA que revise los registros del servicio y lo depure — tiene acceso completo a la máquina
- Si todo lo demás falla, pídele a la IA que te ayude a depurar el problema
Servicios de Infraestructura
Sección titulada «Servicios de Infraestructura»Tu máquina de desarrollo puede incluir contenedores sidecar para bases de datos y servicios:
- PostgreSQL — Base de datos relacional (puerto 5432)
- PostGIS — PostgreSQL con extensiones geoespaciales (puerto 5432)
- Redis — Caché en memoria (puerto 6379)
- MongoDB — Base de datos de documentos (puerto 27017)
- MySQL — Base de datos relacional (puerto 3306)
- MailHog — Servidor de pruebas de correo con interfaz web (puerto SMTP 1025, puerto UI 8025)
Consulta los servicios en ejecución y su estado en el panel Services.
Estados del Ciclo de Vida
Sección titulada «Estados del Ciclo de Vida»Las máquinas de desarrollo pasan por estos estados del ciclo de vida:
| Estado | Descripción |
|---|---|
| Pending | Esperando ser creada |
| Initializing | Configurando el entorno |
| Running | Activa y en buen estado |
| Suspended | Pausada para ahorrar recursos (se reanuda rápidamente) |
| Archived | Almacenada en almacenamiento en frío (tarda más en restaurarse) |
| Restoring | Siendo restaurada desde el almacenamiento archivado |
| Failed | El aprovisionamiento u operación falló — la máquina puede ser reaprovisionada |
| Terminated | Detenida permanentemente |
Las máquinas se suspenden automáticamente después de 60 minutos de inactividad y se archivan después de 24 horas de suspensión.
Preguntas Frecuentes
Sección titulada «Preguntas Frecuentes»Si la máquina de desarrollo se cae, ¿qué pasa con mi app publicada?
Los datos de tu app viven en la capa de datos de la plataforma de Proyecta (el CMS), que es independiente de tu máquina de desarrollo y permanece disponible. Sin embargo, los archivos del frontend de tu app se sirven desde la máquina de desarrollo — si está suspendida o archivada, los visitantes verán un error 503 hasta que la máquina se reanude. Ten esto en cuenta para las apps que quieras mantener accesibles públicamente; reanudar la máquina restaura el sitio.
¿Puedo obtener una máquina de desarrollo más rápida?
Actualmente todas las máquinas de desarrollo funcionan con la misma asignación de recursos. Si necesitas más capacidad para un proyecto grande, contacta a soporte.
¿Puedo acceder directamente a la máquina de desarrollo?
No. No hay acceso a terminal o shell en el builder. La IA tiene acceso completo a la máquina en tu nombre — pídele que ejecute comandos, revise registros o inspeccione archivos, y te reportará los resultados en el chat.