Comme infomaniak ne propose pas l'installation de Supervisor, nous devons passer par Systemd qui permet à peu de chose près la même chose.
1. Installer Systemd sur votre serveur cloud (via le fast installer)
Sous votre serveur cloud, rendez-vous sous "Fast Installer" puis chercher Systemd et cliquer sur installer.
Une fois installé, systemd sera disponible via SSH avec la commande "systemctl".
2. Ecriture d'un fichier de configuration
Ce fichier sera utilisé par Systemd pour connaître les actions à effectuer et dans quel dossier de votre hébergement
2.1 Se rendre sous "~/.config/systemd/user/"
Une fois connecté par SSH à votre serveur, tappez la commande suivante :
Code : Tout sélectionner
cd ~/.config/systemd/user/
Donnez ici le nom que vous souhaitez à votre fichier. Par exemple "laravelqueue.service".
Code : Tout sélectionner
nano laravelqueue.service
A noter que dans cet example, j'utilise PHP 8.2, changez cela en fonction de vos besoins, ainsi que la description, le working directory et la commande d'exécution.
Code : Tout sélectionner
[Unit]
Description=***DESCRIPTION DE CE SERVICE POUR VOTRE INFO***
After=network.target
[Service]
Restart=always
WorkingDirectory=%h/sites/***DOSSIER DE VOTRE INSTALLATION LARAVEL (si situé sous "sites")***
ExecStart=/opt/php8.2/bin/php artisan queue:work --sleep=3 --tries=3
[Install]
WantedBy=default.target
3. Instruire Systemd à utiliser votre fichier
3.1 Lancez la commande suivante depuis le SSH de votre serveur afin de faire réanalyser les fichiers services de systemd:
Code : Tout sélectionner
systemctl --user daemon-reload
Code : Tout sélectionner
systemctl --user enable --now laravelqueue.service
Code : Tout sélectionner
systemctl --user status laravelqueue.service
Code : Tout sélectionner
systemctl --user restart laravelqueue.service
