Dev Machines
Lingkungan pengembangan yang terisolasi untuk membangun dan menguji aplikasi. Lingkungan Linux penuh yang didukung oleh Proyecta Cloud.
Proyecta menyediakan sebuah development machine (runtime) khusus untuk setiap proyek. Ini adalah container yang terisolasi dengan lingkungan Linux penuh tempat aplikasimu berjalan selama proses pengembangan.
Bagaimana cara kerja dev machine?
Section titled “Bagaimana cara kerja dev machine?”Saat kamu membuka sebuah proyek, Proyecta akan:
- Membuat container (pod) yang terisolasi di cloud
- Mengkloning kode dari GitHub
- Menginstal dependensi dan menyiapkan lingkungan
- Menjalankan development server aplikasimu
- Menampilkan preview langsung di builder
Kamu dapat melihat progres provisioning di Runtime Status Bar di bawah toolbar.
Langkah-Langkah Provisioning
Section titled “Langkah-Langkah Provisioning”Status bar menampilkan langkah-langkah berikut saat startup:
| Langkah | Deskripsi |
|---|---|
| Creating pod | Menjalankan container yang terisolasi |
| Health check | Memverifikasi bahwa container sudah berjalan |
| Git init | Mengkloning repositorimu |
| Environment setup | Menginstal dependensi (npm, pip, dll.) |
| Starting services | Meluncurkan aplikasi dan infrastrukturmu |
| Ready | Dev machine-mu sudah sepenuhnya online |
Dev machine saya bermasalah. Bagaimana cara memperbaikinya?
Section titled “Dev machine saya bermasalah. Bagaimana cara memperbaikinya?”Jika preview tidak mau dimuat atau mesin tampak terhenti:
- Periksa Runtime Status Bar untuk melihat pesan error
- Coba gunakan Terminal untuk memeriksa log
- Jika semua cara sudah dicoba, minta AI untuk membantu men-debug masalahnya
Layanan Infrastruktur
Section titled “Layanan Infrastruktur”Dev machine-mu dapat menyertakan sidecar container untuk database dan layanan lainnya:
- PostgreSQL — Database relasional (port 5432)
- PostGIS — PostgreSQL dengan ekstensi geospasial (port 5432)
- Redis — Cache in-memory (port 6379)
- MongoDB — Database dokumen (port 27017)
- MySQL — Database relasional (port 3306)
- MailHog — Server pengujian email dengan web UI (SMTP port 1025, UI port 8025)
Lihat layanan yang sedang berjalan beserta statusnya di panel Services.
Status Siklus Hidup
Section titled “Status Siklus Hidup”Dev machine melewati status siklus hidup berikut:
| Status | Deskripsi |
|---|---|
| Pending | Menunggu untuk dibuat |
| Initializing | Menyiapkan lingkungan |
| Running | Aktif dan berjalan normal |
| Suspended | Dijeda untuk menghemat sumber daya (dapat dilanjutkan dengan cepat) |
| Archived | Disimpan di cold storage (membutuhkan waktu lebih lama untuk dipulihkan) |
| Restoring | Sedang dipulihkan dari archived storage |
| Failed | Provisioning atau operasi gagal — mesin dapat di-provisioning ulang |
| Terminated | Dihentikan secara permanen |
Mesin akan otomatis di-suspend setelah 60 menit tidak aktif dan di-archive setelah 24 jam dalam kondisi suspended.
Jika dev machine mati, apa yang terjadi pada aplikasi yang sudah dipublish?
Backend aplikasimu (fungsi serverless dan database Convex) berjalan di infrastruktur cloud milik Convex sendiri dan tetap tersedia terlepas dari status dev machine-mu. Namun, file frontend aplikasimu disajikan dari dev machine — jika mesin sedang dalam kondisi suspended atau archived, pengunjung akan melihat error 503 hingga mesin kembali aktif. Perlu diingat hal ini untuk aplikasi yang ingin tetap dapat diakses publik; melanjutkan mesin akan memulihkan situs tersebut.
Bisakah saya mendapatkan dev machine yang lebih cepat?
Semua dev machine saat ini berjalan dengan alokasi sumber daya yang sama. Jika kamu membutuhkan kapasitas lebih untuk proyek besar, silakan hubungi tim support.
Bisakah saya mengakses dev machine secara langsung?
Bisa. Gunakan Terminal bawaan untuk akses shell penuh ke lingkungan pengembanganmu.