Գիտելիքների բազա

Տեղադրում 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-ն — և երբեք ֆայլերի բովանդակությունը:

Առնչվող նյութեր

Դեռ խնդի՞ր կա:

Աջակցությունը ներառված է յուրաքանչյուր սակագնային պլանում, և պատասխանները տրվում են ձեր սեփական լեզվով։

Կապվել աջակցման ծառայության հետ Բոլոր հոդվածները
Տեղադրում Zinnector®-ի միջոցով. միացրեք, ստուգեք, ուղարկեք