1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Serveur Cloud : Systemd
Ce guide explique comment installer systemd sur un serveur Cloud managé et présente les principales commandes utilisables.
Attention : les informations suivantes sont fournies à titre indicatif et s'adressent aux utilisateurs les plus avancés. Infomaniak n'apporte aucun support sur cette activité, nous vous recommandons de consulter notre annuaire de partenaires webmasters.
Prérequis :
Principales commandes
Voici une liste non-exhaustives de commandes utilisables avec systemd.
Prérequis :
- Les fichiers "unit" devront être placés dans :
~/.config/systemd/user/ ( /home/clients/CLIENTID/.config/systemd/user )
et les permissions doivent être réglées en 0644 - Le paramètre
--user
doit être indiqué dans chaque commande
Forcer systemd Ă lire Ă nouveau les unit files et Ă prendre en compte les modifications :
systemctl --user daemon-reload
Activation d'un service :
systemctl --user enable SERVICENAME.service
Vérification de l'état d'un service :
systemctl --user status SERVICENAME.service
Configuration de Node en tant que service avec systemd
Il sera nécessaire de créer un fichier "Unit" avec l'extension ".service", qu'il faudra enregistrer dans le répertoire :
~/.config/systemd/user/
Il est possible de réutiliser l'exemple ci-après en remplaçant les valeurs commençant par "{}"
[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/
[Install]
WantedBy=default.target
Actions supplémentaires avec un fichier Unit
Recharger les fichiers Unit
systemctl --user daemon-reload
Activer le service (faire en sorte qu'il se lance au redémarrage d'un Cloud)
systemctl --user enable {nom du fichier unit crée précédemment}
Lancer le service
systemctl --user start {nom du fichier unit crée précédemment}