Restart server Django menampilkan kesalahan berikut:
this port is already running....
Masalah ini terjadi secara khusus pada Ubuntu dan bukan sistem operasi lain. Bagaimana saya bisa membebaskan port untuk me-restart server?
Solusi yang lebih sederhana, cukup ketik sudo fuser -k 8000/tcp
. Ini akan mematikan semua proses yang terkait dengan port 8000.
EDIT:
Untuk pengguna osx yang dapat Anda gunakan sudo lsof -t -i tcp:8000 | xargs kill -9
sudo lsof -i tcp:8000
lalu membunuh id proses yang muncul.Ini akan menunjukkan sesuatu seperti ini.
Jadi sekarang tutup saja port di mana Django / python sudah berjalan dengan mematikan proses yang terkait dengannya.
dalam kasus saya
Sekarang jalankan aplikasi Django Anda.
sumber
sumber
Secara default, perintah runserver memulai server pengembangan pada IP internal di port 8000.
Jika Anda ingin mengubah port server, berikan itu sebagai argumen baris perintah. Sebagai contoh, perintah ini memulai server pada port 8080:
sumber
Kami tidak menggunakan perintah ini {sudo lsof -t -i tcp: 8000 | xargs kill -9} Karena itu tutup semua tab ... Anda harus menggunakannya untuk
ps-id | grep python (tampilkan semua proses dengan id)
kill -9 11633 (11633 adalah id proses untuk: - / bin / python manage.py runserver)
sumber
Ini adalah perluasan dari jawaban Mounir. Saya telah menambahkan skrip bash yang mencakup ini untuk Anda. Jalankan saja
./scripts/runserver.sh
alih-alih./manage.py runserver
dan itu akan bekerja dengan cara yang persis sama.sumber
Maaf atas komentar di pos lama tetapi ini dapat membantu orang
Ketikkan ini di terminal Anda
Ini akan membunuh semua python3 yang berjalan di mesin Anda dan itu akan membebaskan semua port Anda. Sangat membantu saya kapan harus bekerja di proyek Django .
sumber
Bagi saya, ini terjadi karena permintaan API saya di Postman sedang dicegat oleh breakpoint debugger di aplikasi saya ... membiarkan permintaan menggantung. Jika saya membatalkan permintaan di tukang pos sebelum membunuh server aplikasi saya, kesalahan tidak terjadi di tempat pertama.
-> Jadi, coba batalkan semua permintaan terbuka yang Anda buat di program lain.
Di macOS, saya telah menggunakan
sudo lsof -t -i tcp:8000 | xargs kill -9
ketika saya lupa untuk membatalkan permintaan http terbuka untuk menyelesaikanerror = That port is already in use.
ini juga, lengkap menutup aplikasi Postman saya, itulah sebabnya solusi pertama saya lebih baik.sumber
Ketik 'fg' sebagai perintah setelah itu ctl-c.
Perintah:
Fg akan menampilkan yang sedang berjalan di latar belakang. Setelah itu ctl-c akan menghentikannya.
sumber
ps aux | grep kelola
ubuntu 3438 127.0.0 2.3 40256 14064 pts / 0 T 06:47 0:00 python manage.py runserver
bunuh -9 3438
sumber
Tampaknya IDE, VSCode, Dalang, nodemon, express, dll. Menyebabkan masalah ini, Anda menjalankan proses di latar belakang atau hanya menutup area debugging [browser, terminal, dll] atau apa pun, bagaimanapun, saya telah menjawab pertanyaan yang sama sebelumnya, ini dia tautannya
https://stackoverflow.com/a/49797588/2918720
sumber
jika Anda menghadapi masalah ini di mac Anda hanya perlu membuka monitor aktivitas dan memaksa cukup python kemudian coba lagi
sumber
lsof -t -i tcp: 8000 | xargs kill -9
sumber
Jika Anda menggunakan terminal layar VSC, kesalahannya mungkin karena Anda sudah menjalankan server di beberapa shell lain.
Cukup klik pada dropbox di sebelah kiri tanda + di header terminal VSC dan pilih beberapa shell lain dan periksa apakah server sudah berjalan di sana. Keluar dari server itu dan Anda siap meluncurkan server lain.
sumber