Promo Domain .web.id .biz.id .my.id Hanya 5.000 Rupiah

AplikasiVPSWebsite

Menjalankan Project Django di VPS

Ferdin Alamsyah

Django adalah salah satu framework web Python yang paling populer. Cocok digunakan untuk membangun aplikasi web dengan cepat dan efisien. Namun, agar aplikasi Django bisa diakses oleh pengguna secara luas, kita perlu menjalankannya di server, salah satunya menggunakan VPS (Virtual Private Server). Artikel ini akan membahas secara lengkap cara menjalankan project Django di VPS berbasis Ubuntu, mulai dari instalasi hingga bisa diakses melalui domain atau IP publik.

Persiapan Awal

Sebelum mulai, pastikan kamu sudah memiliki hal-hal berikut:

  • VPS aktif dengan akses root (disarankan menggunakan Ubuntu 20.04 atau lebih baru)
  • Akses SSH ke VPS
  • Project Django yang sudah siap dijalankan (bisa hasil development lokal)
  • Domain (opsional, jika ingin menggunakan nama domain)

1. Login ke VPS

Gunakan terminal atau aplikasi SSH seperti PuTTY untuk masuk ke server:

ssh root@ip-address-vps

Ganti ip-address-vps dengan alamat IP dari server kamu.

2. Update Sistem

Lakukan update dan upgrade sistem:

sudo apt update && sudo apt upgrade -y

3. Instal Python, pip, dan venv

Project Django membutuhkan Python dan pip untuk dependency management.

sudo apt install python3 python3-pip python3-venv -y

4. Instal dan Konfigurasi Git (Opsional)

Jika kamu ingin menarik project dari GitHub:

sudo apt install git -y
git clone https://github.com/username/project-django.git
cd project-django

5. Buat Virtual Environment dan Install Dependency

Masuk ke folder project dan buat virtual environment:

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Pastikan requirements.txt memuat semua dependensi, termasuk Django dan gunicorn.

6. Migrasi Database dan Collect Static Files

Lakukan migrasi database dan kumpulkan file statis:

python manage.py migrate
python manage.py collectstatic

7. Cek ALLOWED_HOSTS dan DEBUG

Edit file settings.py:

DEBUG = False
ALLOWED_HOSTS = ['your_domain.com', 'ip-address-vps']

Gantilah your_domain.com dan ip-address-vps sesuai kebutuhan.

8. Jalankan Gunicorn

Gunicorn digunakan untuk menjalankan aplikasi Django di server produksi.

Instal Gunicorn:

pip install gunicorn

Jalankan Gunicorn:

gunicorn --bind 0.0.0.0:8000 project_name.wsgi:application

Ganti project_name dengan nama folder utama project Django kamu.

9. Instal dan Konfigurasi Nginx

Nginx berfungsi sebagai reverse proxy yang meneruskan permintaan HTTP ke Gunicorn.

a. Instal Nginx

sudo apt install nginx -y

b. Buat Konfigurasi Nginx

Buat file konfigurasi:

sudo nano /etc/nginx/sites-available/django_project

Isi contoh konfigurasi:

server {
    listen 80;
    server_name your_domain.com ip-address-vps;

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
        root /home/username/project-django;
    }

    location / {
        include proxy_params;
        proxy_pass http://127.0.0.1:8000;
    }
}

Aktifkan konfigurasi:

sudo ln -s /etc/nginx/sites-available/django_project /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx

10. Konfigurasi Firewall (UFW)

Jika menggunakan UFW, buka port HTTP:

sudo ufw allow 'Nginx Full'
sudo ufw enable

11. Gunakan Supervisor (Opsional)

Gunakan Supervisor untuk memastikan Gunicorn tetap aktif meski server restart:

sudo apt install supervisor -y

Buat file konfigurasi:

sudo nano /etc/supervisor/conf.d/gunicorn.conf

Contoh isi:

[program:gunicorn]
directory=/home/username/project-django
command=/home/username/project-django/venv/bin/gunicorn --workers 3 --bind 127.0.0.1:8000 project_name.wsgi:application
autostart=true
autorestart=true
stderr_logfile=/var/log/gunicorn.err.log
stdout_logfile=/var/log/gunicorn.out.log
user=username

Aktifkan supervisor:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start gunicorn

12. Akses Project dari Browser

Sekarang, buka browser dan akses:

http://ip-address-vps

Atau jika menggunakan domain:

http://your_domain.com

Jika semua konfigurasi benar, maka website Django kamu sudah live!

Penutup

Menjalankan project Django di VPS memerlukan beberapa konfigurasi, namun dengan pendekatan yang sistematis, proses ini cukup mudah dilakukan. Kamu mempelajari mulai dari instalasi Python, setup environment, hingga integrasi Gunicorn dan Nginx. Langkah selanjutnya adalah menambahkan fitur keamanan seperti SSL dengan Let’s Encrypt dan memonitor performa aplikasi menggunakan tool seperti Prometheus atau Grafana. Selamat mencoba dan semoga sukses menjalankan project Django kamu secara online!

Baca Juga