Save 15% on All Hosting Services

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode: Skills Memulai
Bagian FAQ
Administrasi Linux

Cara Menginstal Django di Server Hosting: Panduan Lengkap Langkah demi Langkah

Django adalah framework web Python tingkat tinggi yang dirancang untuk mendorong pengembangan cepat dan desain yang bersih dan pragmatis. Ini tetap menjadi salah satu pilihan paling populer untuk membangun aplikasi web yang scalable, aman, dan dapat dipertahankan — dari blog sederhana hingga platform enterprise yang kompleks. Dalam panduan komprehensif ini, kami akan memandu Anda melalui setiap langkah yang diperlukan untuk menginstal Django di server hosting, dari mempersiapkan lingkungan Linux hingga menjalankan proyek pertama Anda dan mempersiapkannya untuk production.

Mengapa Memilih Django untuk Aplikasi Web Anda?

Sebelum menyelami proses instalasi, ada baiknya memahami mengapa Django terus mendominasi lanskap pengembangan web Python:

  • Batteries included: Django dilengkapi dengan autentikasi bawaan, panel admin, ORM, penanganan form, dan fitur keamanan langsung dari kotak.
  • Scalability: Django mendukung platform dengan traffic tinggi seperti Instagram dan Pinterest.
  • Desain security-first: Django melindungi dari kerentanan umum termasuk SQL injection, XSS, CSRF, dan clickjacking secara default.
  • Pengembangan cepat: Filosofi convention-over-configuration-nya memungkinkan developer mengirimkan fitur lebih cepat.
  • Ekosistem besar: Ribuan paket yang dapat digunakan kembali dan komunitas besar berarti solusi untuk hampir setiap masalah sudah ada.

Untuk mendapatkan hasil maksimal dari Django, Anda memerlukan lingkungan server yang andal. Paket VPS Hosting memberi Anda akses root, sumber daya dedicated, dan fleksibilitas yang dibutuhkan aplikasi Django.

Prasyarat

Sebelum Anda memulai proses instalasi, pastikan Anda memiliki hal berikut:

  • Server hosting yang menjalankan distribusi Linux (Ubuntu 20.04/22.04 atau Debian direkomendasikan)
  • Akses SSH ke server dengan privilege sudo
  • Python 3.8 atau lebih tinggi (Python 3.10+ direkomendasikan)
  • pip (package manager Python) terinstal
  • Keakraban dasar dengan command line Linux

> Pro Tip: Jika Anda menjalankan aplikasi Django production, hindari lingkungan shared hosting. Paket VPS Hosting atau Dedicated Server akan memberi Anda kontrol dan performa yang dibutuhkan aplikasi Anda.

Langkah 1: Terhubung ke Server Anda melalui SSH

Buka terminal Anda dan buat koneksi SSH ke server hosting Anda:

ssh username@server_ip

Ganti username dengan nama pengguna sistem aktual Anda dan server_ip dengan alamat IP publik server Anda. Jika Anda menggunakan port SSH kustom atau file autentikasi berbasis kunci, sesuaikan perintah sesuai kebutuhan:

ssh -i /path/to/your/key.pem username@server_ip

Setelah terhubung, Anda akan memiliki antarmuka command-line ke server Anda di mana Anda dapat memulai proses setup.

Langkah 2: Perbarui Sistem Anda dan Instal Python & pip

Menjaga paket sistem Anda tetap terbaru adalah langkah pertama yang penting untuk keamanan dan kompatibilitas.

Perbarui Indeks Paket

sudo apt update && sudo apt upgrade -y

Instal Python 3 dan pip

Sebagian besar distribusi Ubuntu dan Debian modern dilengkapi dengan Python 3 yang sudah terinstal. Verifikasi versi Python Anda terlebih dahulu:

python3 --version

Jika Python 3 tidak terinstal, atau Anda memerlukan pip, instal dengan:

sudo apt install python3 python3-pip -y

Verifikasi instalasi:

python3 --version
pip3 --version

Anda harus melihat nomor versi yang mengkonfirmasi kedua alat tersedia.

Langkah 3: Siapkan Virtual Environment Python

Menggunakan virtual environment bukan hanya direkomendasikan — ini dianggap best practice untuk setiap proyek Python. Virtual environment mengisolasi dependensi proyek Anda dari instalasi Python system-wide dan dari proyek lain di server yang sama, mencegah konflik versi dan menjaga lingkungan Anda tetap bersih.

Instal virtualenv

sudo pip3 install virtualenv

Atau, Anda dapat menggunakan modul venv bawaan Python (tersedia di Python 3.3+):

sudo apt install python3-venv -y

Buat Direktori Proyek dan Virtual Environment Anda

Navigasi ke direktori tempat Anda ingin menghost proyek Anda, atau buat yang baru:

mkdir myproject
cd myproject

Sekarang buat virtual environment di dalam direktori proyek Anda:

virtualenv venv

Atau, menggunakan modul venv bawaan:

python3 -m venv venv

Aktifkan Virtual Environment

source venv/bin/activate

Setelah diaktifkan, prompt command Anda akan berubah untuk menampilkan nama virtual environment, misalnya:

(venv) username@server:~/myproject$

Semua perintah pip install yang dijalankan saat virtual environment aktif akan menginstal paket hanya dalam lingkungan terisolasi ini. Untuk menonaktifkannya kapan saja, cukup jalankan:

deactivate

Langkah 4: Instal Django

Dengan virtual environment aktif, instal Django menggunakan pip:

pip install django

Untuk menginstal versi spesifik Django (direkomendasikan untuk production untuk memastikan kompatibilitas):

pip install django==4.2

Verifikasi instalasi:

django-admin --version

Anda harus melihat nomor versi Django yang terinstal dicetak ke terminal.

Langkah 5: Buat Proyek Django Baru

Gunakan alat command-line django-admin bawaan Django untuk membuat scaffold proyek baru:

django-admin startproject myproject .

> Catatan: Titik trailing (.) memberitahu Django untuk membuat file proyek di direktori saat ini daripada membuat subdirektori bersarang. Ini adalah struktur yang lebih bersih untuk sebagian besar deployment.

Direktori proyek Anda sekarang akan berisi struktur berikut:

myproject/
├── manage.py
└── myproject/
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
  • manage.py — Utilitas command-line untuk berinteraksi dengan proyek Django Anda.
  • settings.py — File konfigurasi pusat untuk proyek Anda.
  • urls.py — Konfigurasi routing URL.
  • wsgi.py / asgi.py — Entry point untuk web server yang kompatibel dengan WSGI dan ASGI.

Langkah 6: Konfigurasi Pengaturan Database

Buka file settings.py untuk mengkonfigurasi koneksi database Anda:

nano myproject/settings.py

Default: SQLite (Hanya Development)

Secara default, Django dikonfigurasi untuk menggunakan SQLite, yang cocok untuk development dan testing tetapi tidak direkomendasikan untuk production:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

Opsi Production: PostgreSQL

PostgreSQL adalah database yang paling umum direkomendasikan untuk Django di production. Pertama, instal paket yang diperlukan:

sudo apt install postgresql postgresql-contrib libpq-dev -y
pip install psycopg2-binary

Kemudian perbarui pengaturan DATABASES di settings.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

Opsi Production: MySQL / MariaDB

Jika Anda lebih suka MySQL atau MariaDB, instal adapter yang diperlukan:

sudo apt install default-libmysqlclient-dev -y
pip install mysqlclient

Kemudian konfigurasi pengaturan DATABASES:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

Konfigurasi ALLOWED_HOSTS

Saat berada di settings.py, juga perbarui pengaturan ALLOWED_HOSTS untuk menyertakan alamat IP server atau nama domain Anda. Ini diperlukan agar Django melayani permintaan dalam mode non-debug:

ALLOWED_HOSTS = ['your_server_ip', 'yourdomain.com', 'www.yourdomain.com']

Langkah 7: Terapkan Database Migrations

Django menggunakan sistem migration untuk mengelola perubahan skema database. Jalankan migration awal untuk membuat semua tabel database yang diperlukan:

python manage.py migrate

Anda akan melihat output yang mencantumkan setiap migration yang diterapkan. Migration yang berhasil terlihat seperti:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  ...

Buat Superuser (Opsional tetapi Direkomendasikan)

Buat akun admin untuk mengakses antarmuka admin bawaan Django:

python manage.py createsuperuser

Anda akan diminta untuk memasukkan nama pengguna, alamat email, dan password.

Langkah 8: Jalankan Django Development Server

Anda sekarang dapat memulai development server bawaan Django untuk memverifikasi instalasi Anda:

python manage.py runserver 0.0.0.0:8000

Perintah ini mengikat development server ke semua antarmuka jaringan yang tersedia di port 8000. Buka browser web Anda dan navigasi ke:

http://your_server_ip:8000

Anda harus melihat halaman sambutan Django — roket dengan pesan “The install worked successfully! Congratulations!”

Untuk mengakses panel admin, navigasi ke:

http://your_server_ip:8000/admin

> Penting: Development server bawaan Django tidak cocok untuk production. Ini adalah single-threaded, tidak dioptimalkan untuk performa, dan kurang hardening keamanan. Selalu gunakan web server tingkat production untuk deployment live.

Langkah 9: Persiapkan Django untuk Production (Direkomendasikan)

Untuk deployment production, Anda perlu mengkonfigurasi stack web server yang tepat. Setup yang paling umum dan direkomendasikan adalah Nginx + Gunicorn.

Instal Gunicorn

Dengan virtual environment aktif:

pip install gunicorn

Uji bahwa Gunicorn dapat melayani aplikasi Anda:

gunicorn --bind 0.0.0.0:8000 myproject.wsgi

Instal dan Konfigurasi Nginx

sudo apt install nginx -y

Buat file konfigurasi server block Nginx:

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

Tambahkan konfigurasi berikut:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    location = /favicon.ico { access_log off; log_not_found off; }

    location /static/ {
        root /home/username/myproject;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }
}

Aktifkan konfigurasi dan restart Nginx:

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

Kumpulkan File Statis

Perbarui settings.py dengan direktori file statis:

STATIC_ROOT = BASE_DIR / 'staticfiles'

Kemudian kumpulkan semua file statis:

python manage.py collectstatic

Amankan Aplikasi Anda dengan SSL

Untuk aplikasi Django production apa pun, HTTPS tidak dapat ditawar. SSL Certificate mengenkripsi data dalam transit antara server Anda dan pengguna Anda, melindungi informasi sensitif, dan diperlukan untuk indikator kepercayaan browser modern. AlexHost menawarkan sertifikat SSL yang terintegrasi dengan mulus dengan lingkungan hosting Anda.

Pertimbangan Production Tambahan

Variabel Lingkungan untuk Pengaturan Sensitif

Jangan pernah hardcode nilai sensitif seperti SECRET_KEY, password database, atau kunci API di settings.py. Gunakan variabel lingkungan sebagai gantinya:

pip install python-decouple

Di settings.py:

from decouple import config

SECRET_KEY = config('SECRET_KEY')
DEBUG = config('DEBUG', default=False, cast=bool)

Atur DEBUG ke False di Production

DEBUG = False

Menjalankan dengan DEBUG = True di production mengekspos halaman error terperinci dan informasi konfigurasi sensitif kepada penyerang potensial.

Konfigurasi Nama Domain

Jika Anda belum mendaftarkan domain untuk proyek Django Anda, Domain Registration melalui AlexHost memudahkan untuk mengarahkan domain Anda ke server dengan cepat, dengan manajemen DNS lengkap disertakan.

Memilih Hosting yang Tepat untuk Aplikasi Django Anda

Lingkungan hosting yang Anda pilih memiliki dampak signifikan pada performa, keandalan, dan skalabilitas aplikasi Django Anda. Berikut adalah panduan cepat:

Use CaseHosting yang Direkomendasikan
Development & testingShared Web Hosting
Aplikasi production kecil hingga menengahVPS Hosting
Aplikasi dengan traffic tinggi atau resource-intensiveDedicated Servers
Aplikasi Django terintegrasi machine learning / AIGPU Hosting

Untuk sebagian besar proyek Django yang bergerak ke production, paket VPS Hosting menawarkan keseimbangan ideal antara performa, kontrol, dan cost-effectiveness. Anda mendapatkan akses root, kemampuan untuk menginstal stack software apa pun, dan sumber daya dedicated yang tidak dapat disediakan shared hosting.

Troubleshooting Masalah Instalasi Django Umum

pip: command not found

Instal pip secara manual: sudo apt install python3-pip -y

django-admin: command not found

Virtual environment Anda mungkin tidak

Administrasi Linux
Linux
Administrasi Linux

Save 15% on All Hosting Services

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode: Skills Memulai
Akses cepat ke informasi
Akses cepat ke informasi

Hemat waktu Anda dan dapatkan jawaban cepat untuk pertanyaan Anda

Selesaikan masalah sendiri
Selesaikan masalah sendiri

Basis pengetahuan berisi tutorial yang mendetail, sehingga Anda dapat menangani sendiri tugas-tugas teknis.

Meningkatkan keterampilan
Meningkatkan keterampilan

Dengan menggunakan basis pengetahuan, Anda dapat memperluas pengetahuan Anda tentang web hosting dan topik-topik terkait

Ilustrasi dan diagram
Ilustrasi dan diagram

Banyak artikel yang disertai dengan ilustrasi dan diagram, membuat proses dan pengaturan yang rumit menjadi lebih mudah dipahami.

Trik yang Berguna
Trik yang Berguna

Anda akan menemukan tips dan trik berguna untuk meningkatkan kinerja situs atau aplikasi web Anda.

Relevansi topik yang diberikan
Relevansi topik yang diberikan

Informasi dalam basis pengetahuan diperbarui secara berkala untuk mencerminkan perubahan dan tren terbaru di bidang infrastruktur TI dan layanan AlexHost

Tidak menemukan topik yang Anda cari? Ada solusi yang sempurna

Tamu dan Pelanggan yang luar biasa! Kenyamanan Anda adalah prioritas kami! Jika Anda mengalami kesulitan dalam menginstal perangkat lunak tertentu atau menggunakan server, jangan ragu untuk menghubungi kami. Kami menghargai pendapat Anda dan selalu siap membantu Anda memecahkan masalah Anda.

Selain itu, kami memberi Anda kesempatan untuk berpartisipasi aktif dalam pembuatan basis pengetahuan kami. Jika Anda memiliki topik atau pertanyaan yang ingin Anda masukkan ke dalam basis data kami, beritahu kami! Kami siap untuk menulis artikel dan panduan terperinci berdasarkan kebutuhan Anda.

Kami berusaha keras untuk membuat pengalaman Anda dengan AlexHost senyaman dan seefisien mungkin, dan kontribusi Anda pada basis pengetahuan membantu kami mencapai tujuan ini. Hubungi kami ->
info@alexhost.com dan beri tahu kami bagaimana kami dapat membuat masa tinggal Anda bersama kami menjadi lebih baik.

Solution Image