Späť na nástroje

Generátor súborov systemd service

Vyplňte spustiteľný súbor, pracovný adresár, politiku reštartu a používateľa — získate pripravenú .service jednotku (a voliteľne aj doprovodnú .timer jednotku) s vysvetlením každého vygenerovaného riadku.

Predvoľby

Začnite s bežnou záťažou

Načíta rozumné predvolené hodnoty pre polia nižšie. Všetko zostáva potom upraviteľné.

[Unit]

Popis a poradie

Sekcia [Unit] sú metadáta a poradie — hovorí systemd, čo je táto služba a po čom má nasledovať, ale sama osebe nič nespúšťa.

Jednotky, po ktorých sa má táto služba spustiť, oddelené medzerou.

[Service] — proces

Čo spustiť

Vyžadovaná absolútna cesta.

Ak je prázdne, použije sa hodnota User.

[Service] — prostredie

Premenné prostredia

Každý riadok sa stane vlastným riadkom Environment=. Pre tajné hodnoty, ktoré nechcete mať priamo v súbore jednotky, použite namiesto toho EnvironmentFile.

Voliteľné, absolútna cesta.

[Install]

Kedy sa automaticky spustí

Sekcia [Install] má význam len pre systemctl enable — určuje, do sekvencie spúšťania ktorého cieľa má túto službu zaradiť.

[Service] — spoľahlivosť

Politika reštartu

Nie je to prepínač zapnuté/vypnuté — vyberte variantu zodpovedajúcu tomu, ako má tento proces zlyhávať.

Reštartuje sa pri páde, nenulovom návratovom kóde alebo timeoute — ale zámerné „systemctl stop“ alebo čisté exit(0) ponechá tak. Zvyčajná voľba pre dlhobežiacu aplikáciu alebo herný server: zotaví sa z pádov bez toho, aby bojovala s administrátorom, ktorý ju zámerne zastavil.

Počet sekúnd čakania pred reštartom.

Voliteľné

Obmedzuje, koľko RAM a CPU môže táto jedna služba využiť. Nechajte vypnuté, ak naozaj nepotrebujete pevný strop.

Validácia

Časté chyby

Vyzerá to čisto — neboli zistené žiadne problémy.

Voliteľná doprovodná jednotka

Spúšťa túto službu podľa rozvrhu namiesto (alebo navyše k) štartu systému — systemd obdoba cron úlohy, viazaná na záťaž typu Type=oneshot. Preferujete pre niečo jednoduché obyčajný cron? Pokrýva to samostatný nástroj Generátor Cron úloh — OnCalendar= má inú syntax než cron a nie je jeho priamou náhradou.

Výstup

Vygenerované súbory jednotiek

my-application.service

[Unit]
Description=My application
After=network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/usr/bin/node /opt/wespner-app/server.js
WorkingDirectory=/opt/wespner-app
User=wespner-app
Environment="NODE_ENV=production"
Environment="PORT=3000"
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Inštalačné príkazy

sudo cp my-application.service /etc/systemd/system/my-application.service
sudo systemctl daemon-reload
sudo systemctl enable --now my-application.service
journalctl -u my-application.service -f   # follow logs

Prevádzkuješ vlastný herný server?

Herné servery Wespner s DDoS ochranou, NVMe diskami a aktiváciou do pár minút.

Prezrieť hosting