Node.js / npm / Composer тамыры жок

Эски блогдогу билдирүүдө мен Herode программасын колдонуп, Node.js сайтын кантип акысыз өткөрө турганымды сүрөттөдүм . Эми мен сизге Node.js , npm жана Composerди бир нече коддуу код менен root укуксуз башка бөлүшүлгөн хостторго кандайча орнотууга боло тургандыгын көрсөтөм. Анын жардамы менен сиз топтомдорду орнотуп, Vue.js тиркемелерин жайылтып же Express.js серверин иштете аласыз. Биз ар дайым колдонуучу каталогунда иштеп, nvm - Node Package Manager колдонобуз.


Композитордун жана түйүндүн жеткиликтүүлүгүн камсыз кылбоо жана төмөнкү саптар эч кандай натыйжа бербеши керек:

16c389ff1cdd9380cc5f9244775eb6c8

Алгач, кийинчерээк керек боло турган убактылуу чөйрө өзгөрмөлөрүн аныктайбыз. Бул үчүн колдонуучунун үй каталогун (адатта ~/, кээ бир бөлүшүлгөн хосттордо /www/htdocs/xxxxxxx/ да болот) жана каалаган PHP версиясын (мисалы, All-Inkl провайдери менен /usr/bin/php72, DomainFactory менен /usr/local/bin/php7-72LATEST-CLI) көрсөтөбүз.:

16c389ff1cdd9380cc5f9244775eb6c8

Эми биз PHP консолдо эң акыркы версиясында иштеп жатканын текшеребиз. Бул үчүн биз үй каталогунда жаңы папка түзүп, символикалык шилтеме түзүп, каталогду PATH чөйрө өзгөрмөсүнүн башына кошобуз.

16c389ff1cdd9380cc5f9244775eb6c8

Эми глобалдык композиторду орнотуу сценарийин жүктөө, текшерүү жана аткаруу аркылуу орнотуп, андан кийин колдонуучу каталогуна composer.phar жайгаштырып, дагы бир символ шилтемесин түзөбүз:

16c389ff1cdd9380cc5f9244775eb6c8

Биз Node.js орнотуу үчүн nvm колдонобуз. Бул Node версияларынын ортосунда которулууну жеңилдетүү үчүн иштелип чыккан Bash скрипти. Бул жерде биз анын Node.jsти root укуктарын талап кылбастан орното турган өзгөчөлүгүнөн пайдаланып жатабыз.:

16c389ff1cdd9380cc5f9244775eb6c8

.Bashrc бир аз түзөтүү мен үчүн керек болчу:

16c389ff1cdd9380cc5f9244775eb6c8

Эми Node.js учурдагы туруктуу версиясын орнотуп, иштете алабыз:

16c389ff1cdd9380cc5f9244775eb6c8

Nvm жардамы менен биз версияларды оңой эле алмаштыра алабыз.

16c389ff1cdd9380cc5f9244775eb6c8

Мен бул кадамдардын баарын бир нече немис жалпы хостинг провайдерлери менен эч кандай көйгөйсүз аткара алдым. Айрым хосттордо символикалык шилтемелер менен көйгөйлөр бар, бирок муну alias definitions аркылуу да чечүүгө болот. Мисалы, төмөнкү .bashrc файлы DomainFactory үчүн иштейт.:

16c389ff1cdd9380cc5f9244775eb6c8

Ошондой эле виртуалдык/бөлүшүлгөн чөйрөлөрдө `/proc/stat` функциясына кирүүдө көйгөйлөр бар, ошондуктан, мисалы, `os.cpus()` Node функциясы туура ядро санынын ордуна `undefined` кайтарат . Бул npm пакеттерин орнотууда "Undefined' касиетинин 'length' маанисин окуй албай жатам" сыяктуу ката билдирүүлөрүнө алып келет. Мен көйгөйдү чечкен Node.jsтин акыркы версиясын (мисалы, 11.15.0) колдонуу менен көйгөйдү чече алдым.

Артка