Dev Machines
बनाने और परीक्षण के लिए अलग-थलग development environment। Proyecta Cloud द्वारा संचालित पूर्ण Linux environment।
Proyecta हर project के लिए एक समर्पित development machine (runtime) तैयार करता है। यह एक अलग-थलग container है जिसमें पूरा Linux environment होता है, जहाँ development के दौरान तुम्हारा app चलता है।
Dev machines कैसे काम करती हैं?
Section titled “Dev machines कैसे काम करती हैं?”जब तुम कोई project खोलते हो, तो Proyecta:
- Cloud में एक अलग-थलग container (pod) बनाता है
- GitHub से तुम्हारा code clone करता है
- dependencies install करता है और environment सेट अप करता है
- तुम्हारे app का development server शुरू करता है
- Builder में एक live preview दिखाता है
Toolbar के नीचे Runtime Status Bar में provisioning की प्रगति देख सकते हो।
Provisioning के चरण
Section titled “Provisioning के चरण”Startup के दौरान status bar ये चरण दिखाती है:
| चरण | विवरण |
|---|---|
| Creating pod | अलग-थलग container को शुरू करना |
| Health check | यह सत्यापित करना कि container चल रहा है |
| Git init | तुम्हारी repository clone करना |
| Environment setup | dependencies install करना (npm, pip, आदि) |
| Starting services | तुम्हारा app और infrastructure launch करना |
| Ready | तुम्हारी dev machine पूरी तरह online है |
मेरी dev machine में समस्या आ रही है। इसे कैसे ठीक करूँ?
Section titled “मेरी dev machine में समस्या आ रही है। इसे कैसे ठीक करूँ?”अगर preview load नहीं हो रहा या machine अटकी हुई लग रही है:
- error messages के लिए Runtime Status Bar जाँचो
- logs देखने के लिए Terminal का उपयोग करने की कोशिश करो
- अगर कुछ काम न आए, तो AI से समस्या debug करने में मदद माँगो
Infrastructure Services
Section titled “Infrastructure Services”तुम्हारी dev machine में databases और services के लिए sidecar containers शामिल हो सकते हैं:
- PostgreSQL — Relational database (port 5432)
- PostGIS — Geospatial extensions के साथ PostgreSQL (port 5432)
- Redis — In-memory cache (port 6379)
- MongoDB — Document database (port 27017)
- MySQL — Relational database (port 3306)
- MailHog — Web UI के साथ email testing server (SMTP port 1025, UI port 8025)
Services panel में चल रही services और उनकी स्थिति देखो।
Lifecycle States
Section titled “Lifecycle States”Dev machines इन lifecycle states से गुज़रती हैं:
| State | विवरण |
|---|---|
| Pending | बनाए जाने की प्रतीक्षा में |
| Initializing | Environment सेट अप हो रहा है |
| Running | सक्रिय और सही तरीके से चल रही है |
| Suspended | संसाधन बचाने के लिए रुकी हुई है (जल्दी resume होती है) |
| Archived | Cold storage में संग्रहीत (restore होने में अधिक समय लगता है) |
| Restoring | Archived storage से restore हो रही है |
| Failed | Provisioning या operation विफल रहा — machine को फिर से provision किया जा सकता है |
| Terminated | स्थायी रूप से बंद कर दी गई है |
Machines निष्क्रियता के 60 मिनट बाद अपने आप suspend हो जाती हैं और suspension के 24 घंटे बाद archive हो जाती हैं।
अगर dev machine बंद हो जाए, तो मेरे published app का क्या होगा?
तुम्हारे app का backend (Convex serverless functions और database) Convex के अपने cloud infrastructure पर चलता है और तुम्हारी dev machine की स्थिति से बेपरवाह उपलब्ध रहता है। हालाँकि, तुम्हारे app की frontend files dev machine से serve होती हैं — अगर यह suspend या archive हो जाए, तो visitors को 503 error दिखेगी जब तक machine resume नहीं हो जाती। जिन apps को तुम हमेशा publicly accessible रखना चाहते हो, उनके लिए यह बात ध्यान में रखो; machine resume करने से site वापस चालू हो जाती है।
क्या मुझे तेज़ dev machine मिल सकती है?
फिलहाल सभी dev machines एक ही resource allocation के साथ चलती हैं। अगर किसी बड़े project के लिए तुम्हें अधिक capacity चाहिए, तो support से संपर्क करो।
क्या मैं dev machine को सीधे access कर सकता हूँ?
हाँ। अपने development environment में पूरी shell access के लिए built-in Terminal का उपयोग करो।