1000 FAQ, 500 Anleitungen und Lernvideos. Hier gibt es nur Lösungen!
Systemd auf Cloud-Server installieren und konfigurieren
Diese Anleitung erläutert, wie Sie installieren und konfigurieren systemd
ĂĽber ein Cloud-Server und stellt die wichtigsten bedienbaren Bedienelemente vor.
⚠Für zusätzliche Unterstützung Kontaktieren Sie einen Partner oder gratis eine Ausschreibung starten Auch Sie finden heraus, was Sie wollen. Rolle des Gastgebers.
Voraussetzungen
- Folgen Sie dem Installationsleitfaden
systemd
für Cloud-Server. - Einsehen die amtliche Dokumentation um alle Möglichkeiten von systemd kennenzulernen
- Die "unit"-Dateien mĂĽssen in platziert werden:
~/.config/systemd/user/ ( /home/clients/absolute-path-id/.config/systemd/user )
(ersetzt durch Absolute-path-id in Ihrem Manager sichtbar) und die Berechtigungen mĂĽssen in 0644 eingestellt werden. - Der Parameter
--user
ist in jedem Auftrag anzugeben.
Hauptaufträge
Hier ist eine nicht-extensive Liste von Befehlen, die mit systemd
.
Erzwingen systemd
die unit files erneut zu lesen und Ă„nderungen zu berĂĽcksichtigen:
systemctl --user daemon-reload
Aktivierung eines Dienstes:
systemctl --user enable --now SERVICENAME.service
ĂśberprĂĽfung des Status eines Dienstes:
systemctl --user status SERVICENAME.service
Konfiguration von Node als Service mit systemd
Es wird notwendig sein, eine "Unit"-Datei mit der Erweiterung ".service" zu erstellen, die im Verzeichnis gespeichert werden muss:
~/.config/systemd/user/
Das folgende Beispiel kann wieder verwendet werden, indem die mit {} beginnenden Werte ersetzt werden:
[Unit]
Description={Le nom du service} # Spécifier ici un nom du service. Celui-ci est obligatoire mais n'a pas d'impact sur le fonctionnement
[Service]
Restart=always
Environment=NODE_VERSION={la version souhaitée} # Spécifier ici la version de Node à utiliser. S'assurer qu'elle soit installée au préalable avec "nvm install {la version souhaitée}"
WorkingDirectory=%h/{repertoire du projet Node} # %h correspond à la racine de l'hébergement
ExecStart=/bin/bash -c "exec $HOME/.nvm/nvm-exec {commande de lancement du script node}" # Cette commande dépend du projet. Par exemple, "npm run start", "npm run serve" ou encore "node server.js" sont courants
[Install]
WantedBy=default.target
Zusätzliche Aktionen mit einer Unit-Datei
systemctl --user daemon-reload
Starten Sie den Dienst (wenn dieser bereits aktiv ist, geschieht nichts):
systemctl --user start [Nom du Unit]
Stoppen Sie den Dienst (wenn dieser nicht aktiv ist, geschieht nichts):
systemctl --user stop [Nom du Unit]
Neustart des Dienstes (wenn er nicht läuft, wird er gestartet):
systemctl --user restart [Nom du Unit]
Erhalten Sie Informationen ĂĽber den Dienst; insbesondere:
- "Active," das anzeigt, ob der Dienst läuft und seit wann
- "CGroup" zeigt die Prozessgruppe, die der Dienst verwaltet, es ermöglicht, die aktiven Prozesse mit ihren Argumenten und ihrer ID zu sehen
Unter "CGroup" befinden sich mögliche Logs (Standard-Ausgabe und Prozessfehler):
systemctl --user status [Nom du Unit]
Automatisches Starten des Dienstes am Serverboot aktivieren; Hinweis: Es startet nicht den Dienst:
systemctl --user enable [Nom du Unit]
Deaktivieren Sie den automatischen Start des Dienstes am Serverboot; NB: Es stoppt den Dienst nicht:
systemctl --user disable [Nom du Unit]
Einstellungen mit user-Einträgen:
[Unit]
Description="nom service"
[Service]
Restart=always
Environment=NODE_VERSION=16.17
WorkingDirectory=%h/sites/"nom-repertoire-site"/
ExecStart=/bin/bash -c "exec $HOME/.nvm/nvm-exec npm run start"
[Install]
WantedBy=default.target