Django adalah salah satu framework web Python nan paling populer. Cocok digunakan untuk membangun aplikasi web dengan sigap 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 bakal membahas secara komplit langkah menjalankan project Django di VPS berbasis Ubuntu, mulai dari instalasi hingga bisa diakses melalui domain alias IP publik.
Persiapan Awal
Sebelum mulai, pastikan Anda sudah mempunyai hal-hal berikut:
- VPS aktif dengan akses root (disarankan menggunakan Ubuntu 20.04 alias lebih baru)
- Akses SSH ke VPS
- Project Django nan sudah siap dijalankan (bisa hasil development lokal)
- Domain (opsional, jika mau menggunakan nama domain)
1. Login ke VPS
Gunakan terminal alias aplikasi SSH seperti PuTTY untuk masuk ke server:
ssh root@ip-address-vpsGanti ip-address-vps dengan alamat IP dari server kamu.
2. Update Sistem
Lakukan pembaruan dan upgrade sistem:
sudo apt pembaruan && sudo apt upgrade -y3. Instal Python, pip, dan venv
Project Django memerlukan Python dan pip untuk dependency management.

4. Instal dan Konfigurasi Git (Opsional)
Jika Anda mau menarik project dari GitHub:
sudo apt install git -y git clone https://github.com/username/project-django.git cd project-django5. Buat Virtual Environment dan Install Dependency
Masuk ke berkas project dan buat virtual environment:
python3 -m venv venv source venv/bin/activate pip install -r requirements.txtPastikan 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 collectstatic7. 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 gunicornJalankan Gunicorn:
gunicorn --bind 0.0.0.0:8000 project_name.wsgi:applicationGanti project_name dengan nama berkas utama project Django kamu.
9. Instal dan Konfigurasi Nginx
Nginx berfaedah sebagai reverse proxy nan meneruskan permintaan HTTP ke Gunicorn.
a. Instal Nginx
sudo apt install nginx -yb. Buat Konfigurasi Nginx
Buat file konfigurasi:
sudo nano /etc/nginx/sites-available/django_projectIsi 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 nginx10. Konfigurasi Firewall (UFW)
Jika menggunakan UFW, buka port HTTP:
sudo ufw allow 'Nginx Full' sudo ufw enable11. Gunakan Supervisor (Opsional)
Gunakan Supervisor untuk memastikan Gunicorn tetap aktif meski server restart:
sudo apt install supervisor -yBuat file konfigurasi:
sudo nano /etc/supervisor/conf.d/gunicorn.confContoh 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=usernameAktifkan supervisor:
sudo supervisorctl reread sudo supervisorctl update sudo supervisorctl start gunicorn12. Akses Project dari Browser
Sekarang, buka browser dan akses:
http://ip-address-vpsAtau jika menggunakan domain:
http://your_domain.comJika semua konfigurasi benar, maka website Django Anda sudah live!
Penutup
Menjalankan project Django di VPS memerlukan beberapa konfigurasi, namun dengan pendekatan nan 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 alias Grafana. Selamat mencoba dan semoga sukses menjalankan project Django Anda secara online!
English (US) ·
Indonesian (ID) ·