Գիտելիքների բազա
Տեղադրում Zinnector®-ի միջոցով. միացրեք, ստուգեք, ուղարկեք
Տեղական նախագծից մինչև ուղիղ կայք. մուտք գործեք API բանալիով, կապեք նախագիծը հոսթինգի սլոթին, կարդացեք նախաթռիչքային ստուգումը, որը համեմատում է ձեր PHP-ն, սկավառակը և WordPress-ը սլոթի հետ, և կատարեք push՝ գումարած վերատեղադրումները, տեղադրման պատմությունը և կառուցման մատյանները, երբ ինչ-որ բան սխալ է գնում:
Նախագիծը տեղայնորեն գործարկելուց հետո չորս հրաման այն փոխադրում են Zinn Digital® հոսթինգի իրական կայք՝ մուտք գործել, նախագիծը կապել հոսթինգի սլոթին, ընթերցել նախնական ստուգումը (pre-flight) և ուղարկել (push): Այս հոդվածը մանրամասն ներկայացնում է դրանցից յուրաքանչյուրը, դրանց արտածած տվյալները և դրանից հետո անհրաժեշտ հրամանները՝ վերատեղակայումներ, տեղակայման պատմություն և կառուցման (build) մատյաններ:
Մուտք գործեք API բանալիով
Ստեղծեք բանալի կառավարման վահանակի Settings → API keys բաժնում, այնուհետև՝
zinnector login
Բանալին մուտքագրվում է հրամանային տողի հարցման ժամանակ — այն երբեք չի ընդունվում անմիջապես հրամանային տողում, որպեսզի չհայտնվի ձեր shell-ի պատմության կամ գործընթացների ցանկում: CI-ում այն ուղարկեք փոխանցման միջոցով (pipe)՝ echo "$ZINN_API_KEY" | zinnector login --profile ci, կամ սահմանեք ZINNECTOR_TOKEN-ը և ամբողջությամբ բաց թողեք login-ը: Բանալին ստուգվում է նախքան պահպանվելը և պահպանվում է 600 ֆայլային ռեժիմով: zinnector whoami --scopes-ը ցույց է տալիս, թե որ կազմակերպություն եք մուտք գործել և ինչ թույլտվություններ ունի բանալին. ավազարկղի (sandbox) բանալին նշվում է որպես այդպիսին:
Կապեք նախագիծը սլոթին
zinnector link # ընտրեք կայքը ցանկից
zinnector link example.com --repo acme/site --branch main
link-ը գրանցում է կայքի ID-ն zinnector.json-ում և, եթե չեք փոխանցում --no-repo, միացնում է նախագծի git remote-ը հարթակի կայքին, որպեսզի push-ը տեղակայի այն: Հաստատեք (commit) zinnector.json-ը. գործընկերը, ով կլոնավորում է ռեպոզիտորիան, այնուհետև տեղակայում է նույն վայրում՝ առանց լրացուցիչ ցուցումների: Այն գաղտնիքներ չի պարունակում:
Ընթերցեք նախնական ստուգումը (pre-flight)
zinnector check
Սա այն հրամանն է, որի համար գոյություն ունի CLI-ն: Այն համեմատում է ձեր նախագիծը այն սլոթի հետ, որտեղ պատրաստվում է տեղակայվել, և արտածում է յուրաքանչյուր անհամապատասխանություն — ինչպես նաև յուրաքանչյուր համեմատություն, որը չի կարողացել կատարել.
- PHP տարբերակ, որտեղ հիմնական (major) տարբերության շեղումը գնահատվում է high (բարձր), քանի որ այն վստահաբար խափանում է կայքը, իսկ երկրորդային (minor) շեղումը գնահատվում է ավելի ցածր, քանի որ ամեն ինչ կրիտիկական գնահատելը սովորեցնում է մարդկանց անտեսել նախազգուշացումը:
- Արդյոք սլոթը կարող է անցնել այն տարբերակին, որով կառուցել եք, արդյոք սլոթի PHP-ն անցել է սպասարկման ժամկետը (end of life), և արդյոք մեքենան կիրառել է տարբերակը, թե պարզապես հրահանգ է ստացել:
- Ձեր նախագծի չափը և ֆայլերի քանակը՝ համեմատած սլոթի վրա փաստացի մնացած սկավառակի և inode-ի ազատ տարածքի հետ — WordPress-ի ծառը կարող է սպառել ֆայլերի քանակի սահմանաչափը՝ դեռ շատ հեռու լինելով սկավառակի ծավալի սահմանաչափից:
- WordPress-ի տարբերակները երկու կողմերում, արդյոք սլոթը ավարտել է նախապատրաստումը (provisioning), և արդյոք ռեպոզիտորիան միացված է push կատարելու համար:
Այն նախազգուշացնում է, բայց երբեք չի արգելափակում: Յուրաքանչյուր արդյունք կարելի է շրջանցել zinnector push --force հրամանով, քանի որ դուք ձեր կայքի մասին գիտեք բաներ, որոնք ստուգիչը չգիտի: Համեմատությունը, որը չի հաջողվել կատարել, զեկուցվում է որպես unknown (անհայտ), երբեք որպես անցած, և ամփոփագիրը միշտ նշում է, թե քանիսն են եղել դրանք: Լռելյայնորեն տեղական PHP տարբերակն այն է, որը հայտարարված է zinnector.json-ում. --probe-ը գործարկում է տեղական runtime-ը և չափում է այն: --strict-ը ելք է կատարում ոչ զրոյական կոդով նաև անհայտների դեպքում, ինչը անհրաժեշտ է CI-ի ստուգման (gate) համար:
Push (Ուղարկում)
zinnector push
push-ը գործարկում է նախնական ստուգումը, ուղարկում է ձեր commit-ները, ակտիվացնում է տեղակայումը և հետևում դրան մինչև ավարտը՝ արտածելով վերջնական կարգավիճակը և տեղակայված commit-ը: --dry-run-ը կատարում է ամեն ինչ, բացի տեղակայումից. --no-wait-ը ակտիվացնում է այն և ելք կատարում. --no-git-ը տեղակայում է այն, ինչ հարթակն արդեն ունի՝ առանց push կատարելու: Եթե տեղակայված commit-ը այն չէ, որը նոր էր ուղարկվել, այն հայտնում է այդ մասին:
Երբ ինչ-որ բան սխալ է ընթանում
zinnector deploys example.com # տեղակայման պատմություն — կարգավիճակ, commit, ազդակ, հաղորդագրություն
zinnector logs example.com --build # ամենավերջին տեղակայման կառուցման (build) մատյանը
zinnector logs example.com --error # կայքի սխալների մատյանը
zinnector deploy example.com # վերատեղակայել այն, ինչ հարթակն արդեն ունի
zinnector ai "why is my deploy failing?"
zinnector ai-ն գործում է հարթակում՝ ձեր սեփական հաշվի հիման վրա, ուստի այն կարող է տեսնել նույն տեղակայման պատմությունը և մատյանները: Նախագծի ներսից այն ուղարկում է նախագծի կառուցվածքը — նախապապկաների անունները, տարբերակները և կայքի ID-ն — և երբեք ֆայլերի բովանդակությունը:
Առնչվող նյութեր
Դեռ խնդի՞ր կա:
Աջակցությունը ներառված է յուրաքանչյուր սակագնային պլանում, և պատասխանները տրվում են ձեր սեփական լեզվով։
Կապվել աջակցման ծառայության հետ → Բոլոր հոդվածները →