Node.js / npm / Zeneszerző root nélkül

Egy régebbi blogbejegyzésemben leírtam, hogyan lehet ingyenesen hosztolni a Node.js-t a Heroku segítségével. Most megmutatom, hogyan telepítheti a Node.js , az npm és a Composert bármely más megosztott gazdagépre root jogok nélkül, néhány soros kóddal. Ezzel telepíthet csomagokat, telepítheti a Vue.js alkalmazásokat, vagy csak elindíthat egy Express.js szervert. Mindig a felhasználói könyvtárban dolgozunk, és az nvm-t - a Csomópont Csomagkezelőt - használjuk.


Fontos előre megbizonyosodni arról, hogy a zeneszerző és a csomópont nincs jelen, és hogy a következő sorok nem adnak ki semmilyen kimenetet:

16c389ff1cdd9380cc5f9244775eb6c8

Először ideiglenes környezeti változókat definiálunk, amelyekre később szükségünk lesz. Ehhez megadjuk a felhasználó saját könyvtárát (általában ~/, egyes megosztott hosztokon akár /www/htdocs/xxxxxxx/ is) és a kívánt PHP verziót (például /usr/bin/php72 az All-Inkl szolgáltatóval, /usr/local/bin/php7-72LATEST-CLI DomainFactory- val).:

16c389ff1cdd9380cc5f9244775eb6c8

Most megbizonyosodunk arról, hogy a PHP a legújabb verzióját futtatja a konzolon. Ehhez hozzunk létre egy új mappát a kezdőkönyvtárban, hozzunk létre egy szimbolikus linket, és adjuk hozzá a könyvtárat a PATH környezeti változó elejéhez.

16c389ff1cdd9380cc5f9244775eb6c8

Most telepítjük a globális zeneszerzőt a telepítési parancsfájl letöltésével, ellenőrzésével és végrehajtásával, majd a composer.phar fájl elhelyezésével a felhasználói könyvtárba, és újból létrehozva egy symlinket:

16c389ff1cdd9380cc5f9244775eb6c8

Az nvm-et használjuk a Node.js telepítéséhez. Ez egy Bash szkript, amelyet valójában a Node verziók közötti váltás megkönnyítésére terveztek. Itt kihasználjuk azt a funkcióját, hogy root jogosultságok nélkül telepíti a Node.js-t.:

16c389ff1cdd9380cc5f9244775eb6c8

Egy kis javításra volt szükségem a .bashrc fájlban:

16c389ff1cdd9380cc5f9244775eb6c8

Most telepíthetjük és aktiválhatjuk a Node.js jelenlegi stabil verzióját:

16c389ff1cdd9380cc5f9244775eb6c8

Az nvm segítségével könnyedén válthatunk verziót is.

16c389ff1cdd9380cc5f9244775eb6c8

Mindezeket a lépéseket gond nélkül el tudtam végezni több német megosztott tárhelyszolgáltatóval is. Néhány tárhelyszolgáltatónak problémái vannak a szimbolikus linkekkel, de ez alias-definíciók használatával is megoldható. Például a következő .bashrc fájl működik a DomainFactory esetében.:

16c389ff1cdd9380cc5f9244775eb6c8

Problémák adódhatnak például a /proc/stat elérésekor virtuális / megosztott környezetben, ezért például az os.cpus() node függvény a helyes magszám helyett undefined-et ad vissza . Ez olyan hibaüzenetekhez vezet, mint például: "Nem olvasható a 'length' of undefined" tulajdonság" az npm csomagok telepítésekor. Sikerült megoldanom a problémát a Node.js legújabb verziójával (pl. 11.15.0), amely megoldotta a problémát.

Vissza