જ્ઞાન આધાર

zinnector dev સાથે સ્થાનિક વિકાસ

zinnector dev તમારા પોતાના મશીન પર વાસ્તવિક WordPress કેવી રીતે ચલાવે છે: બે રનટાઇમ્સ (ડૉકર વિના WebAssembly, અથવા ડૉક્ટરમાં મૂળ 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

ડૉકર પર ક્યારેય મૌનપણે પાછા ફરવામાં આવતું નથી. કોઈ વિકાસકર્તા જે માને છે કે તેઓ WebAssembly પર છે અને વાસ્તવિક રીતે Docker પર છે તેમને મદદ કરવાનો પ્રયાસ કરી રહેલા સાધન દ્વારા ખોટો જવાબ આપવામાં આવ્યો છે, તેથી તેને નામ દ્વારા પૂછવું પડશે.

PHP અને WordPress સંસ્કરણો પસંદ કરી રહ્યા છીએ

zinnector dev --php 8.1 --wp 6.7    # ચોક્કસ જોડી સામે વિકાસ કરો
zinnector dev --port 9401           # જ્યારે 9400 રોકાયેલ હોય
zinnector dev --no-login            # wp-admin માં આપમેળે સાઇન ઇન કરશો નહીં
zinnector dev --verbose             # રનટાઇમનું પોતાનું આઉટપુટ બતાવો

ડિફોલ્ટ્સ પ્રોજેક્ટમાં 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® રનટાઇમ એકલા માટે Node 24 મેળવે છે, આશરે 30 MB, nodejs.org પ્રકાશિત કરે છે તે ચેકસમ સામે ચકાસાયેલ છે, તે જ કેશમાં. જ્યારે તે લાગુ થાય છે ત્યારે ઇન્સ્ટોલ પ્રોમ્પ્ટ તે કહે છે. તમારા પોતાના Node વિશે કંઈપણ બદલાતું નથી.

સંબંધિત

હજુ અટવાયા છો?

દરેક પ્લાનમાં સપોર્ટ સામેલ છે અને તમારી પોતાની ભાષામાં જવાબ મળે છે.

સપોર્ટનો સંપર્ક કરો બધા જ લેખો
zinnector dev સાથે સ્થાનિક વિકાસ