Node.js / npm / Կոմպոզիտոր առանց արմատից

Ավելի հին բլոգում ես նկարագրել եմ, թե ինչպես կարելի է հյուրընկալել Node.js- ին ՝ Heroku- ի միջոցով անվճար: Այժմ ես ձեզ ցույց կտամ մի եղանակ, թե ինչպես կարող եք տեղադրել Node.js , npm և Composer ցանկացած այլ համօգտագործվող սերվերի վրա, առանց արմատային իրավունքների ՝ մի քանի տող կոդերով : Դրանով դուք կարող եք տեղադրել փաթեթներ, տեղակայել Vue.js հավելվածներ կամ պարզապես գործարկել Express.js սերվեր: Մենք միշտ աշխատում ենք օգտագործողների գրացուցակում և օգտագործում ենք nvm - հանգույցների փաթեթների կառավարիչ:


Կարևոր է նախապես ապահովել, որ կոմպոզիտորն ու հանգույցը մատչելի չեն, և հետևյալ տողերը որևէ արդյունք չեն տալիս:

16c389ff1cdd9380cc5f9244775eb6c8

Նախ մենք սահմանում ենք շրջակա միջավայրի ժամանակավոր փոփոխականներ, որոնք մեզ հետո պետք կգան: Դա անելու համար մենք որոշում ենք օգտագործողի օգտվողի գրացուցակը (սովորաբար ~ /, որոշ համօգտագործվող հոսթերի վրա նաև / www / htdocs / xxxxxxx /) և ցանկալի PHP տարբերակը (օրինակ All-Inkl / usr / bin / php72 մատակարարի հետ, DomainFactory / usr / local / bin / php7-72 ՎԵՐATԻՆ-CLI):

16c389ff1cdd9380cc5f9244775eb6c8

Այժմ մենք համոզվում ենք, որ PHP- ի վերջին տարբերակն աշխատում է վահանակի վրա: Դա անելու համար մենք տնային գրացուցակում ստեղծում ենք նոր պանակ, ստեղծում ենք փափուկ հղում և գրացուցակն ավելացնում ենք PATH- ի սկզբին:

16c389ff1cdd9380cc5f9244775eb6c8

Այժմ մենք տեղադրում ենք գլոբալ կոմպոզիտորը `ներբեռնելով, ստուգելով և կատարելով տեղադրման սցենարը, այնուհետև տեղադրելով composer.phar- ը օգտվողի գրացուցակում և նորից ստեղծելով սիմվոլիկ:

16c389ff1cdd9380cc5f9244775eb6c8

Node.j- ն տեղադրելու համար մենք օգտագործում ենք nvm: Սա bash գրություն է, որն իրականում ծառայում է հանգույցի տարբերակների միջև հեշտությամբ անցում կատարելու համար: Մենք այստեղ օգտագործում ենք հատկությունը, որը Node.js- ը տեղադրված է առանց արմատային իրավունքների:

16c389ff1cdd9380cc5f9244775eb6c8

.Bashrc- ում մի փոքր ուղղում անհրաժեշտ էր ինձ համար:

16c389ff1cdd9380cc5f9244775eb6c8

Այժմ մենք կարող ենք տեղադրել և ակտիվացնել Node.js- ի ներկայիս կայուն տարբերակը:

16c389ff1cdd9380cc5f9244775eb6c8

Nvm- ի օգնությամբ մենք կարող ենք նաև հեշտությամբ փոխել տարբերակները:

16c389ff1cdd9380cc5f9244775eb6c8

Այս բոլոր քայլերը ես կարողացա իրականացնել որոշ գերմանական ընդհանուր հոսթինգի մատակարարների հետ `առանց որևէ խնդրի: Որոշ հյուրընկալողներ խնդիրներ ունեն սիմլինքերի հետ, բայց aliase- ն կարող է նաև օգնել : Օրինակ, DomainFactory- ում օգնում է հետևյալ .bashrc- ը:

16c389ff1cdd9380cc5f9244775eb6c8

Խնդիրներ կան նաև վիրտուալ / համօգտագործվող միջավայրերում / proc / stat մուտք գործելու ժամանակ, այդ պատճառով, օրինակ, հանգույցի գործառույթը os.cpus (), վերադառնում է չսահմանված ՝ միջուկների ճիշտ քանակի փոխարեն: Npm փաթեթներ տեղադրելիս դա հանգեցնում է սխալ հաղորդագրությունների, ինչպիսիք են ՝ «Հնարավոր չէ կարդալ չսահմանված հատկության« երկարությունը »: Ես կարողացա խնդիրը լուծել ՝ օգտագործելով Node.js- ի ընթացիկ տարբերակը (օրինակ ՝ 11.15.0), որն ուղղված էր խնդրին:

Վերադառնալ