Vissza az eszközökhöz

Systemd szolgáltatásfájl generátor

Add meg a futtatható fájlt, a munkakönyvtárat, az újraindítási szabályt és a felhasználót — kapj egy telepítésre kész .service unitot (és egy opcionális kísérő .timer-t), minden generált sor elmagyarázva.

Sablonok

Indulj egy gyakori terhelésből

Betölti az ésszerű alapértelmezéseket a lenti mezőkhöz. Minden marad szerkeszthető utána.

[Unit]

Leírás és sorrend

A [Unit] szakasz metaadat és sorrend — megmondja a systemd-nek, mi ez a szolgáltatás, és mi után kell elindulnia, de önmagában nem indít el semmit.

Azok a unitok, amik után ennek el kell indulnia, szóközzel elválasztva.

[Service] — folyamat

Mit fusson

Abszolút útvonal kötelező.

Üresen hagyva a User értékére áll be.

[Service] — környezet

Környezeti változók

Minden sor saját Environment= sorrá válik. Használj inkább EnvironmentFile-t olyan titkokhoz, amiket nem szeretnél magában a unit fájlban tartani.

Opcionális, abszolút útvonal.

[Install]

Mikor indul automatikusan

Az [Install] szakasz csak a systemctl enable-nél számít — megmondja, melyik cél boot-szekvenciájának kell behúznia ezt a szolgáltatást.

[Service] — megbízhatóság

Újraindítási szabály

Nem egy be/ki kapcsoló — válaszd azt a változatot, ami illik ahhoz, ahogyan ennek a folyamatnak elromlania kellene.

Újraindul összeomlásnál, nem nulla kilépőkódnál vagy timeoutnál — de egy szándékos „systemctl stop” vagy egy tiszta exit(0) érintetlen marad. A szokásos választás egy hosszan futó alkalmazáshoz vagy játékszerverhez: felépül az összeomlásokból anélkül, hogy szembeszállna egy adminnal, aki szándékosan leállította.

Másodpercek, amennyit vár, mielőtt újraindulna.

Opcionális

Korlátozza, mennyi RAM-ot és CPU-t használhat ez az egy szolgáltatás. Hagyd kikapcsolva, hacsak nincs tényleg szükséged egy kemény felső határra.

Ellenőrzés

Gyakori hibák

Tisztának tűnik — nem található probléma.

Opcionális kísérő unit

Ütemezetten futtatja ezt a szolgáltatást boot helyett (vagy azon felül) — a systemd megfelelője egy cron jobnak, Type=oneshot terhelésekhez kötve. Inkább sima cront szeretnél valami egyszerűhöz? Egy külön Cron feladat generátor eszköz azt fedi le — az OnCalendar= más szintaxis, mint a cron, és nem közvetlen csere rá.

Kimenet

Generált unit fájl(ok)

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

Telepítési parancsok

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

Saját játékszervert üzemeltetsz?

Wespner játékszerverek DDoS-védelemmel, NVMe lemezekkel és néhány perc alatti aktiválással.

Hosting megtekintése