16.04'te başlangıç ​​hizmeti ekle


10

16.4 Kalıcı olarak "düğüm js" projesi çalıştırmak gerekir

ve ubuntu arka planda çalıştırmak için sonsuza kadar paket kullanın

şimdi ubuntu bir başlangıç ​​hizmeti eklemek istiyorum ama sonuç bulunamadı aradım.

Aradım bir dosya oluşturdum test.confiçin/etc/init.d

test.conf:

start on startup
exec forever start /root/node/node_modules/.bin/www

Bunun için a kullanmanız gerekecek systemd service.
George Udosen

Kullandığınız olacakmysql
George Udosen

@George Bu konuda eğitim var mı?
Hesam Pourghazian

Hangi konuya atıfta bulunuyorsunuz, kurdunuz mu foreverve sadece Ubuntu hizmetinde çalıştırmak için bir yola ihtiyacınız var mı?
George Udosen

@George yes ...
Hesam Pourghazian

Yanıtlar:


13

Kullanmanın en basitinde systemd service:

  1. Kurulum forever:

    [sudo] npm install forever -g
    
  2. Komut dosyasını yazın ve istediğiniz konumda çalıştırmak için saklayın.

  3. Şunu yazın Systemd service:

    [Unit]
    Description=forever service
    After=network.target
    
    
    [Service]
    ExecStart=/home/george/.npm-global/bin/forever start /root/node/node_modules/.bin/www
    ExecStop=/home/george/.npm-global/bin/forever stop /root/node/node_modules/.bin/www
    Restart=always
    RestartSec=10                       # Restart service after 10 seconds if node service crashes
    StandardOutput=syslog               # Output to syslog
    StandardError=syslog                # Output to syslog
    SyslogIdentifier=nodejs-example
    
    
    [Install]
    WantedBy=multi-user.target
    
  4. Kaydet systemd servicedosya /etc/systemd/systemolarak myforever.service(ya da her türlü ad ile sizin gibi).

  5. Hizmeti başlatın ve başlangıçta etkinleştirin.

    sudo systemctl start myforever.service
    sudo systemctl enable myforever.service
    
  6. Çalışıp çalışmadığını kontrol edin:

    sudo systemctl status myforever.service
    
  7. İstediğiniz zaman durdurmak ve devre dışı bırakmak için:

    sudo systemctl stop myforever.service
    sudo systemctl disable myforever.service
    

NOT:

  1. Bu basitleştirilmiş bir versiyonu systemd servicebirçok seçenek mevcuttur
  2. Hizmet ayrıca uzantı myforeverolmadan da çağrılabilir , doğru dosyayı seçecektir.servicesystemd
  3. Bu /home/george/.npm-global/bin/foreverbenim nerede nodemodülleri tutulur, seninki farklı olacaktır. İle bulwhich forever

Ek bilgi:

https://www.axllent.org/docs/view/nodejs-service-with-systemd/


nihayet "service-systemd" paketini kullanıyorum
Hesam Pourghazian

@ david6 evet, teşekkürler güncelleme olacak
George Udosen

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.