Vendosa një aplikacion node.js në një server që funksionon në CentOS linux. Unë po përdor forever për të mbajtur gjallë aplikacionin tim node.js. Por kur serveri riniset, duhet ta lëmë aplikacionin të funksionojë automatikisht.

Ne mund të modifikojmë /etc/rc.local për të ekzekutuar komanda në boot. Komandat nuk duhet të ekzekutohen nën rrënjë. Dhe ne duhet të vendosim variablin e mjedisit NODE_ENV.

sudo vi /etc/rc.local

Shtoni këtë rresht në fund të skedarit. Ndryshoni USER_NAME dhe PATH_TO_PROJECT me tuajat. NODE_ENV=production do të thotë që aplikacioni funksionon në modalitetin e prodhimit. Mund të shtoni më shumë rreshta nëse keni nevojë të ekzekutoni më shumë se një aplikacion node.js.

su - USER_NAME -c "NODE_ENV=production /usr/local/bin/forever start /PATH_TO_PROJECT/app.js"

Mos e vendosni NODE_ENV në një rresht të veçantë, aplikacioni juaj do të vazhdojë të funksionojë në modalitetin e zhvillimit, sepse përgjithmonë nuk merr NODE_ENV.

# WRONG!
su - USER_NAME -c "export NODE_ENV=production"

Ruani dhe dilni nga vi (shtypni ESC: w q kthehu). Mund të provoni të rindizni serverin tuaj. Pasi serveri juaj të rindizet, aplikacioni juaj node.js duhet të funksionojë automatikisht, edhe nëse nuk hyni në asnjë llogari nga distanca përmes ssh.

Më mirë të vendosni mjedisin NODE_ENV në guaskën tuaj. NODE_ENV do të vendoset automatikisht kur llogaria juaj USER_NAME të regjistrohet.

echo export NODE_ENV=production >> ~/.bash_profile

Kështu që ju mund të ekzekutoni komanda si forever stop/start /PATH_TO_PROJECT/app.js përmes ssh pa vendosur sërish NODE_ENV.

Botuar fillimisht në vinceyuan.github.io më 4 mars 2014.