Le redémarrage du serveur Django affiche l'erreur suivante:
this port is already running....
Ce problème se produit spécifiquement sur Ubuntu et non sur d'autres systèmes d'exploitation. Comment libérer le port pour redémarrer le serveur?
Une solution plus simple suffit de taper sudo fuser -k 8000/tcp
. Cela devrait tuer tous les processus associés au port 8000.
ÉDITER:
Pour les utilisateurs osx, vous pouvez utiliser sudo lsof -t -i tcp:8000 | xargs kill -9
sudo lsof -i tcp:8000
puis tuer les identifiants de processus qui s'affichent.Cela montrera quelque chose comme ça.
Alors maintenant, fermez simplement le port dans lequel Django / python fonctionne déjà en tuant le processus qui lui est associé.
dans mon cas
Maintenant, lancez votre application Django.
la source
la source
Par défaut, la commande runserver démarre le serveur de développement sur l'IP interne au port 8000.
Si vous souhaitez modifier le port du serveur, passez-le comme argument de ligne de commande. Par exemple, cette commande démarre le serveur sur le port 8080:
la source
Nous n'utilisons pas cette commande {sudo lsof -t -i tcp: 8000 | xargs kill -9} Parce qu'il ferme tous les onglets ... Vous devez utiliser pour
ps -ef | grep python (afficher tous les processus avec id)
kill -9 11633 (11633 est un identifiant de processus pour: - / bin / python manage.py runserver)
la source
Ceci est une extension de la réponse de Mounir. J'ai ajouté un script bash qui couvre cela pour vous. Exécutez simplement
./scripts/runserver.sh
au lieu de./manage.py runserver
et cela fonctionnera exactement de la même manière.la source
Désolé pour un commentaire dans un ancien article, mais cela peut aider les gens
Tapez simplement ceci sur votre terminal
Il tuera tous les python3 fonctionnant sur votre machine et libérera tous vos ports. Aidez-moi beaucoup quand travailler dans le projet Django .
la source
Pour moi, cela se produit car ma demande d'API dans Postman est interceptée par un point d'arrêt du débogueur dans mon application ... laissant la demande suspendue. Si j'annule la demande dans Postman avant de tuer le serveur de mon application, l'erreur ne se produit pas en premier lieu.
-> Essayez donc d'annuler toutes les demandes ouvertes que vous faites dans d'autres programmes.
Sur macOS, j'utilise
sudo lsof -t -i tcp:8000 | xargs kill -9
lorsque j'oublie d'annuler la demande http ouverte afin de résoudreerror = That port is already in use.
Cela aussi, complet ferme mon application Postman, c'est pourquoi ma première solution est meilleure.la source
Tapez 'fg' comme commande après ctl-c.
Commande:
Fg montrera qui fonctionne en arrière-plan. Après cela, ctl-c l'arrêtera.
la source
ps aux | grep gérer
ubuntu 3438 127.0.0 2.3 40256 14064 pts / 0 T 06:47 0:00 python manage.py runserver
tuer -9 3438
la source
Il semble que les IDE, VSCode, Puppeteer, nodemon, express, etc. provoquent ce problème, vous avez exécuté un processus en arrière-plan ou fermé la zone de débogage [navigateur, terminal, etc.] ou quoi que ce soit, de toute façon, j'ai répondu à la même question avant, vous voilà son lien
https://stackoverflow.com/a/49797588/2918720
la source
si vous avez fait face à ce problème dans mac, il vous suffit d'ouvrir le moniteur d'activité et de forcer tout à fait python, puis réessayez
la source
lsof -t -i tcp: 8000 | xargs kill -9
la source
Dans le cas où vous utilisez le terminal d'écran du VSC, l'erreur peut être due au fait que vous exécutez déjà le serveur dans un autre shell.
Cliquez simplement sur la liste déroulante à gauche du signe + dans l'en-tête du terminal de VSC et sélectionnez un autre shell et vérifiez si le serveur y fonctionne déjà. Quittez ce serveur et vous êtes prêt à lancer un autre serveur.
la source