ज्ञानकोष

zinnector dev के साथ स्थानीय विकास

zinnector dev आपकी अपनी मशीन पर एक वास्तविक WordPress कैसे चलाता है: दो रनटाइम (बिना Docker के WebAssembly, या Docker में नेटिव PHP), एक PHP और WordPress संस्करण चुनना, आपके प्रोजेक्ट से क्या परोसा जाता है, 570 MB रनटाइम कहाँ रहता है, और Node 26 पर क्या होता है।

zinnector dev आपकी अपनी मशीन पर एक वास्तविक WordPress चलाता है, जो आपके प्रोजेक्ट में मौजूद प्लगइन्स और थीम्स को आपकी चुनी हुई PHP संस्करण के साथ प्रस्तुत करता है। यह लेख उन दो रनटाइम्स की व्याख्या करता है जिनका यह उपयोग कर सकता है, संस्करणों को कैसे चुनें, कहाँ से क्या प्रस्तुत किया जाता है, और रनटाइम डिस्क पर कहाँ रहता है — ताकि जो आप स्थानीय रूप से परीक्षण करें वही आप डिप्लॉय करें।

दो रनटाइम्स, और दोनों वास्तविक क्यों हैं

Playground डिफ़ॉल्ट है। WordPress Playground PHP को WebAssembly में कंपाइल करता है और इसे Node के अंदर चलाता है, इसलिए एक लैपटॉप जिसमें Node के अलावा कुछ भी इंस्टॉल नहीं है, वह कुछ ही सेकंड में WordPress को बूट कर देता है। 5.2 से 8.5 तक का कोई भी PHP उपलब्ध है। यह PHP एक्सटेंशन का एक छोटा सेट (intl, redis, memcached, जैसा कि वर्तमान बिल्ड पर मापा गया है) वहन करता है, जो अधिकांश प्लगइन और थीम कार्य के लिए पर्याप्त है।

Docker नेटिव php-fpm और MariaDB कंटेनर चलाता है। यह धीमा है, इसके लिए एक Docker डेमॉन और लगभग 1.2 GB की इमेज की आवश्यकता होती है, और यह PHP 7.4 से 8.5 का समर्थन करता है — लेकिन यह imagick और gd सहित पूर्ण एक्सटेंशन सेट के साथ एक नेटिव PHP चलाता है। जब आपको किसी ऐसे एक्सटेंशन का परीक्षण करने की आवश्यकता होती है जो WebAssembly बिल्ड में शामिल नहीं है, तब यह सही विकल्प है।

zinnector dev                       # playground
zinnector dev --runtime docker      # native PHP + MariaDB

Docker पर कभी भी चुपचाप फ़ालबैक नहीं किया जाता है। एक डेवलपर जो सोचता है कि वह WebAssembly पर है और वास्तव में Docker पर है, उसे मदद करने की कोशिश कर रहे टूल द्वारा गलत उत्तर दिया गया है, इसलिए इसे नाम से ही माँगा जाना चाहिए।

PHP और WordPress संस्करण चुनना

zinnector dev --php 8.1 --wp 6.7    # develop against a specific pair
zinnector dev --port 9401           # when 9400 is taken
zinnector dev --no-login            # do not sign in to wp-admin automatically
zinnector dev --verbose             # show the runtime's own output

डिफ़ॉल्ट प्रोजेक्ट में zinnector.json से आते हैं — php, wordpress, runtime और port — जिसे zinnector new लिखता है और जिसे आपको कमिट करना चाहिए, ताकि प्रोजेक्ट पर काम करने वाला प्रत्येक व्यक्ति समान संस्करण चलाए। कमांड लाइन पर मौजूद एक फ़्लैग उस रन के लिए फ़ाइल पर प्राथमिकता रखता है।

वह संस्करण जिसे आप घोषित करते हैं और वह संस्करण जो चलता है, वे अलग-अलग तथ्य हैं। zinnector dev --once रनटाइम को बूट करता है, जो वास्तव में रिपोर्ट करता है उसे प्रिंट करता है — PHP संस्करण, WordPress संस्करण, लोड किए गए एक्सटेंशन — और रुक जाता है। जब यह आपके प्रोजेक्ट की तुलना होस्टिंग स्लॉट से करता है, तो zinnector check --probe इसी माप का उपयोग करता है।

आपके प्रोजेक्ट से क्या प्रस्तुत किया जाता है

रनटाइम आपके प्रोजेक्ट की wp-content/plugins, wp-content/themes और wp-content/mu-plugins डायरेक्टरीज़ को सीधे माउंट करता है, ताकि आपके द्वारा सहेजी गई फ़ाइल अगले रीलोड पर लाइव हो जाए। जो डायरेक्टरीज़ मौजूद हैं लेकिन जिनमें कोई वास्तविक सामग्री नहीं है, उन्हें जानबूझकर माउंट नहीं किया जाता है: रनटाइम की अपनी थीम्स पर माउंट की गई एक खाली themes/ WordPress को बिना किसी थीम के छोड़ देगी, जो कि आपकी साइट के बजाय एक खाली 500 एरर होगा। यही कारण है कि मचान खाली डायरेक्टरीज़ को .gitkeep के साथ रखता है और जब तक आप उनमें कोई थीम नहीं डालते, वे किसी भी चीज़ को प्रभावित नहीं करती हैं।

रनटाइम कहाँ रहता है

WordPress रनटाइम को CLI के साथ शिप करने के बजाय पहले उपयोग पर डाउनलोड किया जाता है — प्रत्येक PHP बिल्ड ले जाने वाला पैकेज लगभग 570 MB का है, और जो डेवलपर केवल साइटों को सूचीबद्ध करता है उसे इसके लिए भुगतान नहीं करना चाहिए। इसे Zinnector® के अपने कैश, ~/.cache/zinnector/runtimes/playground/<version> (या जहाँ भी ZINNECTOR_CACHE_DIR इंगित करता है) में रखा जाता है, आपके प्रोजेक्ट में कभी नहीं, इसलिए यह आपके रिपॉजिटरी में या उस ट्री में समाप्त नहीं हो सकता जिसे zinnector push मापता है। डाउनलोड आपके अपने npm द्वारा किया जाता है, जिसे node npm-cli.js के रूप में चलाया जाता है — कभी भी शेल के माध्यम से नहीं।

रनटाइम संस्करण CLI संस्करण के साथ पिन किया गया है, इसलिए एक प्रोजेक्ट पर दो डेवलपर्स समान PHP बिल्ड चलाते हैं। zinnector dev --reset-runtime इंस्टॉल किए गए रनटाइम को हटा देता है और इसे फिर से इंस्टॉल करता है, जो ऐसे रनटाइम का समाधान है जो इंस्टॉल तो हो गया था लेकिन बूट नहीं होगा।

Node 26 या नए पर

CLI स्वयं 24 से ऊपर के किसी भी Node पर चलता है। हालाँकि, रनटाइम का नेटिव मॉड्यूल केवल Node 24 और 25 (सितंबर 2026 तक) के लिए प्रीबिल्ट बायनेरिज़ शिप करता है। किसी भी चीज़ को कंपाइल करने के बजाय — जिसका अर्थ Windows पर Visual Studio इंस्टॉल करना है — Zinnector® अकेले रनटाइम के लिए लगभग 30 MB का Node 24 उसी कैश में फ़ेच करता है, जिसे nodejs.org द्वारा प्रकाशित चेकसम के विरुद्ध सत्यापित किया जाता है। लागू होने पर इंस्टॉल प्रॉम्प्ट ऐसा बताता है। आपके अपने Node के बारे में कुछ भी नहीं बदलता है।

संबंधित

सभी डेवलपर दस्तावेज़ →

ब्लॉग से नवीनतम

होस्टिंग, एसईओ और बड़े पैमाने पर साइटों को चलाने के बारे में हमने जो लिखा है।

होस्टिंग लेयर से एसईओ और लिंक बिल्डिंग: 2026 ऑपरेटर का दृष्टिकोण

2026 में होस्टिंग कैसे इंडेक्सिंग और लिंक इक्विटी को आकार देती है: पेजों को इंडेक्स में बनाए रखना, उन पर निर्माण करने से पहले पुराने डोमेन की जांच करना, बिना सर्च फ़ुटप्रिंट के लिंक बनाना, और बुनियादी ढांचा एसईओ के लिए क्या कर सकता है और क्या नहीं, इस पर एक ईमानदार दृष्टिकोण।

पोस्ट पढ़ें →

WordPress को तेज़ और सुरक्षित बनाना: परफ़ॉर्मेंस और प्लगइन चेकलिस्ट

तेज़ और सुरक्षित WordPress के लिए एक व्यावहारिक चेकलिस्ट: सर्वर-स्तरीय कैशिंग, प्रति-साइट ऑब्जेक्ट कैश, उपयोग करने लायक कुछ चुनिंदा प्लगइन्स, स्टैक को अद्यतित रखना, और WooCommerce के वे पृष्ठ जिन्हें आपको कभी भी कैश नहीं करना चाहिए।

पोस्ट पढ़ें →

2026 में प्रबंधित वेब होस्टिंग कैसे चुनें: एक खरीदार की मार्गदर्शिका

एक कंट्रोल पैनल वाले सस्ते बॉक्स से अच्छे प्रबंधित होस्टिंग को वास्तव में क्या अलग करता है — माइग्रेशन, बैकअप, आइसोलेशन, वास्तविक कैशिंग और ईमानदार स्केलिंग — और इससे पहले कि आप कोई निर्णय लें, इसका आकलन कैसे करें।

पोस्ट पढ़ें →

ब्लॉग पढ़ें →

क्या अब भी समस्या आ रही है?

हर प्लान में सहायता शामिल है, हेल्प डेस्क दिन के 24 घंटे खुली रहती है, और आप हमारी किसी भी 58 भाषाओं में हमें लिख सकते हैं — हम आपकी ही भाषा में आपको जवाब देते हैं।

सहायता से संपर्क करें → सभी लेख →