8768 sujets

Développement web côté serveur, CMS

Bonjour,

Savez-vous comment arrêter proprement un serveur sous Ubuntu ? En effet, au bout de un ou deux redémarrage ça se relance toujours mais on commence à avoir un message d'erreur en console qui masque les logs :
[[nodemon] 2.0.4
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node ./bin/www`
Port 3000 is already in use
[nodemon] app crashed - waiting for file changes before starting...

Mon unique moyen de réinitialiser est de relancer l'ordinateur.

Alors bien sûr, je devrais poser la question sur le forum dédié, mais cette question a déjà été posée plusieurs fois sur le forum Ubuntu et beaucoup répondent à côté (il y a pas mal de gens qui se la pètent parce qu'ils sont capables d'aligner deux instructions en console, ils veulent montrer ce dont ils sont capables et ça pollue les topics), les topics déjà ouverts restent sans réponses satisfaisantes...

Il y a aussi stackoverflow bien sûr, mais encore faut-il savoir ce que l'on cherche. Et puis je préfère commencer par un forum sur lequel je suis un habitué.

La seule réponse appropriée pour la situation que j'ai pu dégoter est celle-ci (commande pour tuer le serveur posant problème) :
lsof -i :3000 -t | xargs kill

Mais ça ne marche pas à tous les coups. Si quelqu'un à des infos à ce sujet...
Modifié par Olivier C (27 Nov 2020 - 18:22)
Modérateur
Bonjour,

Déjà, faire le diagnostic ! Parce que ça n'échoue pas forcément chez tout le monde pour la même raison.

1) Quand tu dis que parfois lsof -i :3000 -t | xargs kill ne marche pas, c'est quoi les symptômes ? tu relances avec nodemon et tu as toujours les mêmes messages d'erreur que ceux que tu as indiqué dans ton post ?

2) Tu comprends dans le détail ce que fait cette commande ou bien tu l'utilises telle quelle sans trop chercher ?

3) Dans tes scripts, c'est bien le port 3000 qui est utilisé "en toute circonstance" ?

4) As-tu vérifié, quand "ça ne marche pas", s'il y avait encore un process node qui tournait ? (faire par exemple ps -ef|grep node pour vérifier ça).

Amicalement,
Bonjour Parsimonhi,

1/ j'ai effectivement toujours le même message d'erreur.
2/ Effectivement, je dois commencer par là, je tape ça comme une incantation.
3/ Là encore... c'est bien ce port qui semble poser problème. Cependant pour le dev une extension (bower sync) utilise le port 9000, et même le 9001 je crois. Je ne sais pas si cela peut avoir un impact.
4/ Merci pour la dernière commande, je regarderais tout cela avant de faire un retour.