Lompat ke konten Lompat ke sidebar Lompat ke footer

Mengidentifikasi dan Membunuh Proses yang Menggunakan Port 8000



ini mengindikasikan bahwa port 8000 (port default yang digunakan oleh Uvicorn/FastAPI) sedang digunakan oleh aplikasi lain di sistem Anda.

Ini sering terjadi jika:

  1. Anda sudah menjalankan server Uvicorn/FastAPI sebelumnya dan lupa mematikannya, atau terminal yang menjalankannya ditutup secara paksa.

  2. Aplikasi lain (seperti server web lokal lainnya, pengembangan aplikasi lain, atau bahkan beberapa fitur Windows/antivirus) sedang menggunakan port 8000.

Solusi untuk WinError 10013:

Ada dua pendekatan utama:

A. Mengidentifikasi dan Membunuh Proses yang Menggunakan Port 8000 (Direkomendasikan)

Ini adalah cara terbaik karena Anda bisa mengosongkan port yang diinginkan.

  1. Buka Command Prompt sebagai Administrator:

    • Cari "cmd" di Start Menu.

    • Klik kanan pada "Command Prompt" dan pilih "Run as administrator".

  2. Cari Proses yang Menggunakan Port 8000:

    • Di Command Prompt administrator, ketik perintah berikut:

      DOS
      netstat -ano | findstr :8000
      
    • Anda akan melihat output yang menunjukkan proses apa saja yang mendengarkan atau menggunakan port 8000. Carilah baris dengan LISTENING dan catat nomor di kolom terakhir, yaitu PID (Process ID).

      Contoh Output:

        TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       1234
      

      Di sini, 1234 adalah PID-nya.

  3. Membunuh Proses Tersebut:

    • Setelah Anda mendapatkan PID (misalnya 1234), gunakan perintah taskkill untuk menghentikan proses tersebut:

      DOS
      taskkill /PID 1234 /F
      

      Ganti 1234 dengan PID yang Anda temukan. /F berarti paksa menghentikan proses.

    • Jika berhasil, Anda akan melihat pesan seperti "SUCCESS: The process with PID 1234 has been terminated."

  4. Coba Jalankan Uvicorn Kembali:

    • Kembali ke terminal Anda (yang sudah mengaktifkan venv di folder backend).

    • Jalankan lagi perintah:

      Bash
      uvicorn main:app --reload
      
    • Seharusnya sekarang server bisa berjalan.

B. Menggunakan Port Lain

Jika Anda tidak dapat menemukan atau menghentikan proses yang menggunakan port 8000, Anda bisa menyuruh Uvicorn untuk menggunakan port lain.

  1. Ubah Port Saat Menjalankan Uvicorn:

    • Di terminal Anda (yang sudah mengaktifkan venv di folder backend), jalankan Uvicorn dengan menentukan port lain, misalnya 8001 atau 8888:

      Bash
      uvicorn main:app --reload --port 8001
      

      atau

      Bash
      uvicorn main:app --reload --port 8888
      
    • Jika ini berhasil, server Anda akan berjalan di http://127.0.0.1:8001 (atau port yang Anda pilih).

  2. Perbarui URL di Frontend:

    • Jika Anda mengubah port backend, Anda harus memperbarui variabel BACKEND_URL di file frontend/script.js agar sesuai dengan port baru tersebut.

    • Misalnya, jika Anda memilih port 8001, ubah di script.js menjadi:

      JavaScript
      const BACKEND_URL = 'http://127.0.0.1:8001'; // Ubah port di sini
      
    • Simpan file script.js dan refresh halaman index.html di browser Anda.

Saya sarankan untuk mencoba Pendekatan A terlebih dahulu, karena port 8000 adalah port standar untuk pengembangan web lokal. Jika itu tidak berhasil, baru gunakan Pendekatan B.

Posting Komentar untuk "Mengidentifikasi dan Membunuh Proses yang Menggunakan Port 8000"