सिस्टम पुनरारंभ पर स्वचालित रूप से हमेशा (नोड) प्रारंभ करें


190

मैं अपने नोड सर्वर को चालू रखने के लिए नोड के हमेशा के लिए मॉड्यूल का उपयोग कर रहा हूं। हालाँकि, सिस्टम के पुनरारंभ होने पर हमेशा के लिए समाप्त हो जाता है। क्या कोई तरीका है जब मैं सिस्टम के पुनरारंभ होने पर नोड सर्वर को स्वचालित रूप से (हमेशा के लिए) शुरू कर सकता हूं?


1
क्या यह सर्वर क्लाउड में है? क्या आपके पास इसके लिए कोई बूट स्क्रिप्ट है?
जॉर्ज अरंडा

6
चेकआउट PM2 ! यह स्टार्टअप स्क्रिप्ट जनरेशन (systemd, systemv ...) pm2.keymetrics.io/docs/usage/startup
Unitech

जवाबों:


343

मैं crontab का उपयोग करने का सुझाव दूंगा। इसका उपयोग करना आसान है।

कैसे

  1. नोड प्रक्रिया के लिए अपने वांछित रनटाइम उपयोगकर्ता के साथ "परीक्षक" की जगह निम्नलिखित को संपादित करना शुरू करें। यदि आप अपने अलावा किसी अन्य उपयोगकर्ता को चुनते हैं, तो आपको इसे sudo के साथ चलाना होगा।

    $ crontab -u testuser -e
  2. यदि आपने पहले कभी ऐसा नहीं किया है, तो यह आपसे पूछेगा कि आप किस संपादक के साथ संपादित करना चाहते हैं। मुझे विम पसंद है, लेकिन उपयोग में आसानी के लिए नैनो की सिफारिश करेंगे।

  3. एक बार संपादक में निम्नलिखित पंक्ति जोड़ें:

    @reboot /usr/local/bin/forever start /your/path/to/your/app.js
  4. फ़ाइल सहेजें। आपको कुछ प्रतिक्रिया मिलनी चाहिए कि क्रोन स्थापित किया गया है।

  5. क्रोन की स्थापना की आगे की पुष्टि के लिए, वर्तमान में स्थापित क्रोन को सूचीबद्ध करने के लिए निम्नलिखित (फिर से अपने लक्ष्य उपयोगकर्ता नाम के साथ "परीक्षक" की जगह निष्पादित करें:

    $ crontab -u testuser -l 

ध्यान दें कि मेरी राय में, आपको क्रोन में बायनेरिज़ को निष्पादित करते समय हमेशा पूर्ण पथ का उपयोग करना चाहिए। इसके अलावा, अगर आपकी हमेशा की स्क्रिप्ट के लिए रास्ता सही नहीं है, which foreverतो पूरा रास्ता पाने के लिए दौड़ें ।

यह देखते हुए कि आप foreverकॉल nodeभी कर सकते हैं node:

@reboot /usr/local/bin/forever start -c /usr/local/bin/node /your/path/to/your/app.js

आगे की पढाई


2
यह दृष्टिकोण अच्छा है, लेकिन केवल उन मामलों के लिए जब सिस्टम रिबूट हो जाता है। यदि सर्वर बंद हो जाता है और फिर चालू होता है - तो यह क्रॉन जॉब निष्पादित नहीं होगा।

6
आप ऐसा क्यों सोचते हैं? en.wikipedia.org/wiki/Cron#Predefined_scheduling_definitions बताते हैं कि @rebootक्रोन की शुरुआत होने पर क्रॉन का रन आउट होता है। जोड़ने के लिए मैं कभी भी ऐसी स्थिति में नहीं आया हूं जो यह सुझाव दे कि मेरे क्रोन के सेट @rebootको सिस्टम बूट पर नहीं चलाया जाए। जिस तरह से आप इसे बंद करते हैं वह इसके लिए अप्रासंगिक है।
जूलियन लैनिगन

16
ऐसा प्रतीत होता /homeहै कि यह अभी तक माउंट नहीं किया गया है, इसलिए यदि आपका कोड रहता है तो यह काम नहीं करेगा /home
chovy

6
मैंने पाया कि उपरोक्त मेरे लिए विफल रहा क्योंकि नोड मार्ग में नहीं है जब क्रोन हमेशा के लिए चलाने की कोशिश करता है, यहां तक ​​कि -c विकल्प के साथ भी। हालाँकि, यह पता चला है कि आप सीधे Crontab में एक PATH = स्टेटमेंट जोड़ सकते हैं, जब तक कि यह शेड्यूल स्टेटमेंट से ऊपर है। PATH के सेट होने के बाद @reboot स्टेटमेंट सपने की तरह काम करता है।
यॉर्कशायर

2
आपकी टिप्पणी @chovy के लिए धन्यवाद, यह बहुत मददगार था। Bashrc से पर्यावरण चर का उपयोग करने वालों के लिए, उसकी टिप्पणी को ध्यान में रखें। चूंकि / घर मुहिम शुरू नहीं हुई है इसलिए यह काम नहीं करेगा। @reboot varname=value ...
चरवाहा

123

ऐसा करने के लिए आप हमेशा के लिए सेवा का उपयोग कर सकते हैं।

npm install -g forever-service
forever-service install test

यह वर्तमान निर्देशिका में app.js को हमेशा के लिए एक सेवा के रूप में प्रावधान करेगा। हर बार सिस्टम के पुनरारंभ होने पर सेवा स्वचालित रूप से पुनरारंभ हो जाएगी। यह भी जब बंद कर दिया यह एक सुंदर बंद का प्रयास करेंगे। यह स्क्रिप्ट लॉगरोट स्क्रिप्ट को भी प्रावधान करती है।

जीथब उरल: https://github.com/zapty/forever-service

नोट: मैं हमेशा के लिए सेवा का लेखक हूँ।


2
उपयोग -e "पोर्ट = 80 ENV = ठेस FOO = बार" विकल्प
arva

2
मैं हमेशा के लिए सेवा चलाने के लिए नहीं मिलता है। "हमेशा-सेवा स्थापित परीक्षण" में वह "परीक्षण" क्या है? मेरा ऐप हमेशा के लिए शुरू करने की मेरी आज्ञा है: "/ usr / स्थानीय / बिन / हमेशा शुरू -c / usr / स्थानीय / बिन / नोड / घर / एलेक्स / सार्वजनिक / नोड_मॉड्यूल / http-server / bin / http-server -s - d झूठा ”। मुझे क्या लिखना होगा?
एलेक्स

3
यहाँ परीक्षण सेवा का नाम है। जब आप हमेशा के लिए सेवा स्थापित परीक्षण चलाते हैं, तो यह एक सेवा नामक परीक्षण बनाता है, सेवा के रूप में चलाने के लिए उस निर्देशिका में app.js चलाने के लिए। मैं सुझाव देता हूं कि गिहब पृष्ठ पर सहायता दस्तावेज पढ़ें, और यदि आप इसे समझने में असमर्थ हैं तो एक समस्या जोड़ें।
अरवा

6
@ एलेक्स - अर्वा की टिप्पणी को स्पष्ट करने के लिए - उदाहरण में forever-service install test, सेवाtest का नाम होगा , लेकिन चलाने के लिए वास्तविक कार्यक्रम / नोड .js फ़ाइल का नाम नहीं। डिफ़ॉल्ट रूप से, यह मानता है कि कार्यक्रम का नाम है , लेकिन आप इसे ध्वज के साथ ओवरराइड कर सकते हैं , निम्नानुसार है :। (अनटाइटेड, तो कृपया मुझे सही करें अगर कोई वाक्यविन्यास विवरण गलत है।)app.js--scriptforever-service install test --script main.js
डैन निसेनबाम

3
@DanNissenbaum उत्तर देने के लिए धन्यवाद। मैं अब पीएम 2 का उपयोग कर रहा हूं जो खूबसूरती से काम करता है। निर्देश: digitalocean.com/community/tutorials/…
एलेक्स

26

यह मामला डेबियन के लिए वैध है।

करने के लिए निम्नलिखित जोड़ें /etc/rc.local

/usr/bin/sudo -u {{user}} /usr/local/bin/forever start {{app path}}

  • {{user}} आपके उपयोगकर्ता नाम को प्रतिस्थापित करता है।
  • {{app path}}आपके एप्लिकेशन पथ को बदल देता है। उदाहरण के लिए,/var/www/test/app.js

2
यह विधि सुशोभित शटडाउन से नहीं निपटती है, हालांकि बहुत से लोगों के लिए यह संभवतः एक मुद्दा नहीं है।
UpTheCreek

6
BTW - मुझे लगता है कि आपको संपादन करना चाहिए /etc/rc.local, नहीं/etc/init.d/rc.local
UpTheCreek

@UpTheCreek से सहमत हैं कि /etc/rc.local इसे जोड़ने के लिए अधिक उपयुक्त स्थान है - एक महान विवरण के लिए देखें: unix.stackexchange.com/a/59945
सो ओवर इट

2
इसके अलावा, आप app.jsयह सुनिश्चित करने के लिए 'वर्तमान वर्किंग डाइरेक्टरी' को निर्दिष्ट करना चाह सकते हैं कि रिलेटिव फाइल्स को सही तरीके से लोड किया जाए - process.chdir('/your/path/to/your/app'); Node.js यहाँ
तो यह

1
यदि आपको अपने नोड.जेएस स्क्रिप्ट (एक्सप्रेस के लिए $ PORT की तरह) के लिए पर्यावरण चर सेट करने की आवश्यकता है, तो /etc/rc.localमेरे लिए चाल के लिए निम्न पंक्ति जोड़ रहा है:( cd /path/to/project && /usr/bin/sudo -u {{user}} env PORT={{port number}} PATH=$PATH:/usr/local/bin sh -c "forever start app.js" )
sffc

25
  1. NPM का उपयोग करके विश्व स्तर पर PM2 स्थापित करें

    npm install pm2 -g

  2. Pm2 के साथ अपनी स्क्रिप्ट शुरू करें

    pm2 start app.js

  3. एक सक्रिय स्टार्टअप स्क्रिप्ट उत्पन्न करें

    pm2 startup

    नोट: PM2 स्टार्टअप PM2 को शुरू करने के लिए है जब सिस्टम रिबूट होता है। पीएम 2 एक बार शुरू हो गया, सिस्टम के नीचे जाने से पहले यह सभी प्रक्रियाओं को फिर से शुरू कर रहा था।

यदि आप स्वचालित स्टार्टअप को अक्षम करना चाहते हैं, तो बस pm2 अनस्टार्टअप का उपयोग करें

यदि आप स्टार्टअप स्क्रिप्ट को किसी अन्य उपयोगकर्ता के तहत निष्पादित करना चाहते हैं, तो बस -u <username>विकल्प और उपयोग करें--hp <user_home>:


कृपया एक से अधिक प्रश्नों के उत्तर न दें ।
फेलिक्सएसएफडी

मैं वास्तव में प्यार करता हूँ कि कैसे pm2 को परिष्कृत किया जाता है, और एक भयानक निगरानी उपकरण के साथ आता है। आशा है कि यह दूसरों के लिए अधिक प्रकाश डाला गया है। @ rv7 मुझे यकीन है कि आपने इसे देखा है, लेकिन एक विंडोज़ समाधान है: npmjs.com/package/pm2-windows-nervice । हालांकि यह खुद की कोशिश नहीं की है।
जॉन ली

11

एक वैकल्पिक crontab विधि इस उत्तर और इस ब्लॉग पोस्ट से प्रेरित है ।

1. एक बैश स्क्रिप्ट फ़ाइल बनाएं (वांछित उपयोगकर्ता के लिए बॉब बदलें)।

vi /home/bob/node_server_init.sh

2. आपके द्वारा अभी बनाई गई फ़ाइल के अंदर इसे कॉपी और पेस्ट करें।

#!/bin/sh

export NODE_ENV=production
export PATH=/usr/local/bin:$PATH
forever start /node/server/path/server.js > /dev/null

अपने कॉन्फ़िगरेशन के अनुसार ऊपर दिए गए रास्तों को संपादित करना सुनिश्चित करें!

3. सुनिश्चित करें कि बैश स्क्रिप्ट निष्पादित की जा सकती है।

chmod 700 /home/bob/node_server_init.sh

4. बैश स्क्रिप्ट का परीक्षण करें।

sh /home/bob/node_server_init.sh

5. नोड के लिए रनटाइम उपयोगकर्ता के साथ "बॉब" बदलें।

crontab -u bob -e

6. कॉपी और पेस्ट (वांछित उपयोगकर्ता के लिए बॉब बदलें)।

@reboot /bin/sh /home/bob/node_server_init.sh

Crontab बचाओ।

आपने इसे अंत तक बना दिया है, आपका पुरस्कार एक रिबूट (परीक्षण करने के लिए) है :)


इस विधि ने मेरे लिए सबसे अच्छा काम किया। जब मैंने server.js फ़ाइल में एक पूर्ण पथ डाला तो हमेशा के लिए छोड़ दिया जाएगा। अगर मैं इसे उसी डायरेक्टरी में चलाता तो फोरवीर ठीक काम करता। सर्वर विफल होने का कारण है। फ़ाइल में अन्य फ़ाइलें शामिल हैं, लेकिन पथ गड़बड़ हो गए थे। इस पद्धति का उपयोग करते हुए, मैं निर्देशिका में मेरी .sh स्क्रिप्ट में सीडी कर सकता हूं, फिर वहां के सापेक्ष सब कुछ चला सकता हूं।
दाढ़ी वाला गीक

9

संलग्न प्रश्न से उत्तर दिया ।

आप PM2 का उपयोग कर सकते हैं , यह Node.js अनुप्रयोगों के लिए एक अंतर्निहित लोड बैलेंसर के साथ उत्पादन प्रक्रिया प्रबंधक है।

PM2 स्थापित करें

$ npm install pm2 -g

एक आवेदन शुरू करो

$ pm2 start app.js

अगर आप एक्सप्रेस का उपयोग कर रहे हैं तो आप अपने ऐप को शुरू कर सकते हैं

pm2 start ./bin/www --name="app"

सभी चल रही प्रक्रियाओं को सूचीबद्ध करना:

$ pm2 list

यह सभी प्रक्रिया को सूचीबद्ध करेगा। फिर आप निम्नलिखित आदेश के साथ आईडी या ऐप के नाम का उपयोग करके अपनी सेवा को रोक / पुनः आरंभ कर सकते हैं।

$ pm2 stop all                  
$ pm2 stop 0                    
$ pm2 restart all               

लॉग प्रदर्शित करने के लिए

$ pm2 logs ['all'|app_name|app_id]

यह सिस्टम बूट पर स्वचालित रूप से कैसे शुरू होता है ? आप बस CLI मैन्युअल टाइपिंग / पेस्ट करें
ग्रीन

@ग्रीन, रन, $pm2 startupइसके बाद आप pm2 को मैन्युअल रूप से कमांड चलाने, कॉपी करने और चलाने के लिए पूछेंगे। फिर, $pm2 saveअब आपका app.js सिस्टम रीबूट से
बचेगा

7

आपको उसके लिए /etc/init.d फ़ोल्डर में एक शेल स्क्रिप्ट बनाने की आवश्यकता है। यदि आपने कभी ऐसा नहीं किया है तो यह जटिल है, लेकिन init.d स्क्रिप्ट पर वेब पर बहुत सारी जानकारी है।

यहां एक नमूना है जो एक स्क्रिप्ट है जिसे मैंने एक कॉफ़ीस्क्रिप्ट साइट को हमेशा के लिए चलाने के लिए बनाया है:

#!/bin/bash
#
# initd-example      Node init.d 
#
# chkconfig: 345 
# description: Script to start a coffee script application through forever
# processname: forever/coffeescript/node
# pidfile: /var/run/forever-initd-hectorcorrea.pid 
# logfile: /var/run/forever-initd-hectorcorrea.log
#
# Based on a script posted by https://gist.github.com/jinze at https://gist.github.com/3748766
#


# Source function library.
. /lib/lsb/init-functions


pidFile=/var/run/forever-initd-hectorcorrea.pid 
logFile=/var/run/forever-initd-hectorcorrea.log 

sourceDir=/home/hectorlinux/website
coffeeFile=app.coffee
scriptId=$sourceDir/$coffeeFile


start() {
    echo "Starting $scriptId"

    # This is found in the library referenced at the top of the script
    start_daemon

    # Start our CoffeeScript app through forever
    # Notice that we change the PATH because on reboot
    # the PATH does not include the path to node.
    # Launching forever or coffee with a full path
    # does not work unless we set the PATH.
    cd $sourceDir
    PATH=/usr/local/bin:$PATH
    NODE_ENV=production PORT=80 forever start --pidFile $pidFile -l $logFile -a -d --sourceDir $sourceDir/ -c coffee $coffeeFile

    RETVAL=$?
}

restart() {
    echo -n "Restarting $scriptId"
    /usr/local/bin/forever restart $scriptId
    RETVAL=$?
}

stop() {
    echo -n "Shutting down $scriptId"
    /usr/local/bin/forever stop $scriptId
    RETVAL=$?
}

status() {
    echo -n "Status $scriptId"
    /usr/local/bin/forever list
    RETVAL=$?
}


case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
        status
        ;;
    restart)
        restart
        ;;
    *)
        echo "Usage:  {start|stop|status|restart}"
        exit 1
        ;;
esac
exit $RETVAL

मुझे यह सुनिश्चित करना था कि init.d स्क्रिप्ट के रूट के रूप में फ़ोल्डर और PATH को स्पष्ट रूप से रूट उपयोगकर्ता के लिए सेट या उपलब्ध है।


2
यदि आपके पास कोई निर्भरता है जो init.d के साथ भी शुरू की गई है तो आपके पास लोडिंग ऑर्डर की समस्याएँ हो सकती हैं।
UpTheCreek

@ alexandru.topliceanu मैंने लिंक को ठीक कर दिया है।
हेक्टर कॉरी

6

PM2 का प्रयोग करें

सर्वर उत्पादन सर्वर को चलाने के लिए सबसे अच्छा विकल्प कौन सा है

आपके आवेदन को इस तरह से चलाने के क्या फायदे हैं?

  • यदि यह क्रैश हो जाता है तो PM2 आपके एप्लिकेशन को स्वचालित रूप से पुनः आरंभ करेगा।

  • PM2 आपके अखंड अपवादों का एक लॉग रखेगा - इस मामले में, /home/safeuser/.pm2/logs/app-err.log पर एक फ़ाइल में।

  • एक कमांड के साथ, पीएम 2 यह सुनिश्चित कर सकता है कि सर्वर द्वारा रिबूट होने पर इसे फिर से शुरू करने वाले किसी भी एप्लिकेशन को प्रबंधित किया जाए। मूल रूप से, आपका नोड एप्लिकेशन सेवा के रूप में शुरू होगा।

रेफरी: https://www.digitalocean.com/community/tutorials/how-to-use-pm2-to-setup-a-node-js-production-environment-on-an-ubuntu-vps


5

नोड को सेवाओं के रूप में चलने वाले अनुप्रयोगों को प्राप्त करने के लिए नहीं बनाया गया था। सही दृष्टिकोण या तो एक / etc / inittab प्रविष्टि (पुराने लिनक्स सिस्टम) या एक upstart (नए लिनक्स सिस्टम) बनाने के लिए है।

यहाँ कुछ दस्तावेज हैं कि कैसे इसे एक अपस्टार्ट के रूप में स्थापित किया जाए: https://github.com/cvee/node-upstart


अपस्टार्ट ने मुझे CentOS पर विफल कर दिया और मैंने पढ़ा कि यह गायब होने जा रहा है। Init.d प्रविष्टि बनाना वास्तव में सबसे अधिक उपयोगकर्ता के अनुकूल तरीका नहीं है, लेकिन यह मेरे लिए
बिल्कुल गलत है

5

crontabCentOS x86 6.5 पर मेरे लिए काम नहीं करता है। @reboot काम नहीं कर रहा है।

अंत में मुझे यह हल मिल गया:

संपादित करें: /etc/rc.local

sudo vi /etc/rc.local

इस लाइन को फाइल के अंत में जोड़ें। बदलो USER_NAMEऔर PATH_TO_PROJECTअपने को। NODE_ENV=productionमतलब ऐप प्रोडक्शन मोड में चलता है। यदि आपको एक से अधिक नोड.जेएस ऐप चलाने की आवश्यकता है, तो आप अधिक लाइनें जोड़ सकते हैं।

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

NODE_ENVएक अलग पंक्ति में सेट न करें , आपका ऐप अभी भी विकास मोड में चलेगा, क्योंकि हमेशा के लिए नहीं मिलता है NODE_ENV

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

वीआई (प्रेस) को सहेजें और छोड़ें ESC : w q return ) को । आप अपने सर्वर को रिबूट करने का प्रयास कर सकते हैं। आपके सर्वर के रीबूट होने के बाद, आपका नोड.जेएस ऐप स्वचालित रूप से चलना चाहिए, भले ही आप ssh के माध्यम से दूरस्थ रूप से किसी भी खाते में प्रवेश न करें।

आप NODE_ENVअपने शेल में बेहतर पर्यावरण सेट करेंगे। NODE_ENVजब आपका खाता USER_NAMEलॉग इन होगा तो स्वचालित रूप से सेट हो जाएगा ।

echo export NODE_ENV=production >> ~/.bash_profile

तो आप फिर से /PATH_TO_PROJECT/app.jsसेटिंग के बिना हमेशा के लिए ssh के माध्यम से कमांड चला सकते हैं / शुरू कर सकते हैं NODE_ENV


डेबियन 7.6 पर एक ही समस्या है। यह मेरे लिए तय है। बहुत धन्यवाद।
डेनियल व्रुत

ऐसे मामले में जब आप 'हमेशा के लिए' का उपयोग नहीं करना चाहते हैं, तो आप लाइन को 'su - USER_NAME -c "NODE_ENV = उत्पादन नोड / PATH_TO_PROJECT / bin / www" में बदल सकते हैं।
योबिन

3

मैंने एक स्क्रिप्ट लिखी है जो ठीक यही करती है:

https://github.com/chovy/node-startup

मैंने हमेशा के लिए कोशिश नहीं की है, लेकिन आप इसे चलाने वाले कमांड को कस्टमाइज़ कर सकते हैं, इसलिए इसे सीधे आगे होना चाहिए:

/etc/init.d/node-app start
/etc/init.d/node-app restart
/etc/init.d/node-app stop

1

मैंने ऊपर दिए गए जवाबों की बहुत कोशिश की। उनमें से किसी ने मेरे लिए काम नहीं किया। मेरा ऐप /homeउपयोगकर्ता के रूप में और रूट के रूप में स्थापित है । इसका मतलब यह है कि जब उपर्युक्त प्रारंभ स्क्रिप्ट चलती है,/home तक माउंट नहीं होती है, इसलिए ऐप शुरू नहीं होता है।

तब मुझे डिजिटल महासागर द्वारा ये निर्देश मिले:

https://www.digitalocean.com/community/tutorials/how-to-use-pm2-to-setup-a-node-js-production-environment-on-an-ubuntu-vps

पीएम 2 का उपयोग करना बहुत आसान था और पूरी तरह से काम करता है: मेरे वर्चुअल सर्वर में दो फिजिकल क्रैश थे - डाउनटाइम केवल एक मिनट का था।


पीएम 2 में जीथब पर हमेशा की तुलना में बहुत अधिक तारे (2x) हैं, और इसकी विशेषताएं भी अधिक हैं। मुझे लगता है कि अधिकांश उत्तर यहां अप्रचलित हैं।
inf3rno

1

Rc.local के साथ समस्या यह है कि कमांड को रूट के रूप में एक्सेस किया जाता है जो उपयोगकर्ता के रूप में लॉग इन करने और sudo का उपयोग करने से भिन्न होता है।

मैंने स्टार्टअप कमांड्स के साथ एक .sh स्क्रिप्ट जोड़कर इस समस्या को हल किया है जिसे मैं etc / profile.d में करना चाहता हूं। Profile.d में कोई भी .sh फ़ाइल अपने आप लोड हो जाएगी और किसी भी कमांड को मान लिया जाएगा जैसे कि आपने नियमित sudo का उपयोग किया है।

इसका एकमात्र पहलू यह है कि निर्दिष्ट उपयोगकर्ता को उन चीजों के लिए लॉगगिन की जरूरत है, जो मेरी स्थिति में हमेशा होती थीं।


0

पूरा उदाहरण क्रॉस्टैब (/ / crontab पर स्थित) ..

#!/bin/bash

# edit this file with .. crontab -u root -e
# view this file with .. crontab -u root -l

# put your path here if it differs
PATH=/root/bin:/root/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

# * * * * * echo "executes once every minute" > /root/deleteme

@reboot cd /root/bible-api-dbt-server; npm run forever;
@reboot cd /root/database-api-server; npm run forever;
@reboot cd /root/mailer-api-server; npm run forever;

-1

आप अपने नोड को हमेशा के लिए शुरू करने के लिए अपने शेल में निम्न कमांड का उपयोग कर सकते हैं:

forever app.js //my node script

आपको यह ध्यान रखने की आवश्यकता है कि जिस सर्वर पर आपका ऐप चल रहा है, उसे हमेशा चालू रखना चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.