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
- Clona tu código desde GitHub
- 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 y la 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 estar atascada:
- Revisa la Barra de Estado del Runtime para ver mensajes de error
- Usa la Terminal para inspeccionar los logs
- Si nada funciona, 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 de interfaz 8025)
Ve 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 | En espera de ser creada |
| Initializing | Configurando el entorno |
| Running | Activa y en buen estado |
| Suspended | En pausa para ahorrar recursos (se reanuda rápidamente) |
| Archived | Almacenada en cold storage (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 tras 24 horas en estado suspendido.
Preguntas Frecuentes
Sección titulada «Preguntas Frecuentes»Si la máquina de desarrollo se cae, ¿qué pasa con mi app publicada?
El backend de tu app (funciones serverless y base de datos de Convex) se ejecuta en la infraestructura cloud propia de Convex y permanece disponible sin importar el estado de tu máquina de desarrollo. 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 públicamente accesibles; 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?
Sí. Usa la Terminal integrada para tener acceso completo al shell de tu entorno de desarrollo.