Créer un service ou daemon sous Linux avec Node.js implique de créer un script Node.js et de configurer le système pour l’exécuter en arrière-plan. Voici un exemple de script simple pour créer un serveur HTTP. Sauvegardez ce fichier en tant que `server.js`.
```
const http = require(‘http’);
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader(‘Content-Type’, ‘text/plain’);
res.end(‘Hello World\n’);
});
server.listen(3000, ’127.0.0.1’, () => {
console.log(‘Server running at http://127.0.0.1:3000/’);
});
```
Maintenant, vous devez le lancer en tant que daemon. Vous pouvez utiliser le package `forever` pour cela. Vous pouvez l’installer en utilisant npm:
```
npm install forever -g
```
Maintenant, vous pouvez démarrer votre script avec `forever`.
```
forever start server.js
```
Cependant, si vous voulez que votre script démarre au démarrage du système, vous devez créer un fichier service pour systemd. Créez un nouveau fichier appelé `myapp.service` dans le répertoire `/etc/systemd/system`.
```
sudo nano /etc/systemd/system/myapp.service
```
Et ajoutez le contenu suivant:
```
[Unit]
Description=My node.js app
[Service]
ExecStart=/usr/local/bin/node /path/to/your/server.js
Restart=always
User=nobody
[Install]
WantedBy=multi-user.target
```
Remplacez `/path/to/your/server.js` par le chemin réel vers votre script.
Maintenant, rechargez les services systemd et activez votre service:
```
sudo systemctl daemon-reload
sudo systemctl enable myapp
```
Et enfin, démarrez votre service:
```
sudo systemctl start myapp
```
Maintenant, votre script Node.js est en cours d’exécution en tant que service et démarrera automatiquement à chaque démarrage du système.