Django Installation · 9 min read · Oct 19, 2025

Leitfaden zur Installation des Django-Webframeworks auf Debian 12

Django ist ein kostenloses und Open-Source-Python-Webframework, das zur Entwicklung dynamischer Websites und Anwendungen verwendet wird. Es wird für die Entwicklung komplexer und datenbankgestützter Python-Anwendungen eingesetzt.

Django folgt der MVC (Model-View-Controller)-Architektur, die es Entwicklern ermöglicht, weniger Code zu schreiben und in kurzer Zeit eine neue Website zu erstellen. Django kann auf jedem Betriebssystem installiert werden, das Python ausführt, einschließlich Windows, macOS, Linux/Unix und Solaris.

Dieser Leitfaden zeigt Ihnen, wie Sie das Django-Webframework auf einem Debian 12-Server installieren. Sie beginnen mit Django, indem Sie Ihr erstes Django-Projekt mit PostgreSQL als Standarddatenbank, dem Gunicorn WSGI-Server und Nginx als Reverse-Proxy erstellen.

Voraussetzungen

Um zu beginnen, stellen Sie sicher, dass Sie Folgendes haben:

  • Eine Debian 12-Maschine.
  • Einen Nicht-Root-Benutzer mit sudo-Administratorrechten.

Abhängigkeiten installieren

Im ersten Schritt installieren Sie die Paketabhängigkeiten für Ihre Django-Webframework-Installation, dazu gehören die folgenden Pakete:

  • PostgreSQL-Server: Standardmäßig verwendet Django SQLite, und dieses Beispiel zeigt Ihnen, wie Sie PostgreSQL als Datenbank für Ihr Django-Projekt verwenden.
  • Supervisor: Es ist ein Prozessmanager, und Sie werden Ihre Django-Anwendung mit Gunicorn und Supervisor ausführen.
  • Nginx-Webserver: Dieses Beispiel zeigt Ihnen, wie Sie Nginx als Reverse-Proxy für Ihr Django-Projekt verwenden. Dies ermöglicht den Zugriff auf Ihr Django-Projekt über einen lokalen Domainnamen.

Zuerst führen Sie den folgenden apt-Befehl aus, um Ihr Paket-Index zu aktualisieren und zu aktualisieren.

sudo apt update

Jetzt installieren Sie Paketabhängigkeiten wie Python-Virtual-Umgebung, pip-Paketmanager, PostgreSQL und libpq5-Treiber, Nginx und Supervisor.

sudo apt install build-essential python3-dev python3-pip python3-venv nginx supervisor postgresql libpq5 libpq-dev

Geben Sie y ein, um zu bestätigen und mit der Installation fortzufahren.

install dependencies

Sobald die Abhängigkeiten installiert sind, führen Sie die folgenden Befehle aus, um die PostgreSQL-, Nginx- und Supervisor-Dienste zu überprüfen und sicherzustellen, dass diese Dienste ausgeführt und aktiviert sind.

Überprüfen Sie den PostgreSQL-Dienst mit dem folgenden Befehl.

sudo systemctl is-enabled postgresql  
sudo systemctl status postgresql

Wenn PostgreSQL läuft und aktiviert ist, sollten Sie die folgende Ausgabe erhalten.

checking postgresql

Überprüfen Sie den Nginx-Dienst mit dem folgenden Befehl.

sudo systemctl is-enabled nginx  
sudo systemctl status nginx

Wenn Nginx läuft und aktiviert ist, sollte die folgende Ausgabe angezeigt werden.

checking nginx

Überprüfen Sie schließlich den Supervisor mit dem folgenden Befehl.

sudo systemctl is-enabled supervisor  
sudo systemctl status supervisor

Sie sollten sehen, dass der Supervisor läuft und aktiviert ist.

checking supervisor

Django über Pip installieren

Das Django-Webframework kann auf verschiedene Arten installiert werden, einschließlich manuell über Git, über den Pip-Python-Paketmanager oder kombiniert mit einer isolierten Umgebung mit dem venv-Modul und Pip. In diesem Beispiel installieren Sie Django über den Pip-Paketmanager in der isolierten Python-Umgebung.

Melden Sie sich mit dem folgenden Befehl bei Ihrem Benutzer an.

su - username

Erstellen Sie nun ein neues Projektverzeichnis ~/testdjango und wechseln Sie in dieses Verzeichnis.

mkdir -p ~/testdjango; cd ~/testdjango

Führen Sie als Nächstes den folgenden Befehl aus, um eine neue Python-Virtual-Umgebung namens venv in Ihrem aktuellen Projektverzeichnis zu erstellen.

python3 -m venv venv

Aktivieren Sie es dann mit dem folgenden Befehl. Sobald die virtuelle Umgebung aktiviert ist, wird Ihre aktuelle Eingabeaufforderung wie (venv) bob@hostname: aussehen.

source venv/bin/activate

creating venv virtual environment

Innerhalb der venv-Virtual-Umgebung führen Sie den folgenden pip-Befehl aus, um das Django-Webframework zu installieren. Dies installiert Django in Ihrer Python-Virtual-Umgebung, nicht systemweit.

pip install django  
  
or  
  
pip install django==4.2.4

Unten läuft die Django-Installation.

installing django

Überprüfen Sie Ihre Django-Version, sobald die Installation abgeschlossen ist, mit dem django-admin-Befehl unten.

django-admin --version

Die folgende Ausgabe bestätigt, dass Django 4.2.4 in der venv-Virtual-Umgebung über den Pip-Python-Paketmanager installiert ist.

Erstes Django-Projekt erstellen

In diesem Abschnitt lernen Sie, wie Sie das erste Django-Projekt erstellen und den PostgreSQL-Server als Standarddatenbank verwenden. Um dies zu erreichen, führen Sie die folgenden Schritte aus:

  • Datenbank und Benutzer vorbereiten.
  • Django-Projekt über django-admin erstellen.
  • Datenbank migrieren und statische Dateien generieren.
  • Admin-Benutzer erstellen und Django ausführen.

Datenbank und Benutzer vorbereiten

Führen Sie den pip-Befehl unten aus, um das Python-Paket psycopg2 in Ihre virtuelle Umgebung zu installieren. Dies ist der Python-Treiber, der von Django verwendet wird, um eine Verbindung zum PostgreSQL-Datenbankserver herzustellen.

pip install psycopg2  
exit

install psycopg2

Führen Sie nun den folgenden Befehl aus, um sich bei der PostgreSQL-Shell anzumelden.

sudo -u postgres psql

Führen Sie die folgenden Abfragen aus, um eine neue Datenbank und einen Benutzer für Ihr Django-Projekt zu erstellen. Das folgende Beispiel erstellt eine neue Datenbank djangodb, Benutzer django und das Passwort p4ssw0rd.

CREATE USER django WITH PASSWORD 'p4ssw0rd';  
CREATE DATABASE djangodb OWNER django;

create database and user

Führen Sie als Nächstes die folgenden Abfragen aus, um die Liste der Datenbanken und Benutzer auf Ihrem PostgreSQL-Server zu überprüfen.


du  
l

Sie sollten sehen, dass die Datenbank djangodb und der Benutzer django erstellt wurden.

checking database and user

Geben Sie quit ein, um die PostgreSQL-Server zu verlassen.

Django-Projekt erstellen

Bevor Sie das Django-Projekt erstellen, melden Sie sich bei Ihrem Benutzer an und aktivieren Sie die venv-Virtual-Umgebung.

su - bob  
cd testdjango; source venv/bin/activate

Um ein neues Django-Projekt zu erstellen, führen Sie den django-admin-Befehl unten aus. In diesem Fall erstellen Sie ein neues Projekt testapp in Ihrem aktuellen Arbeitsverzeichnis.

django-admin startproject testapp .

Sobald das Projekt erstellt ist, wird das neue Verzeichnis testapp in Ihrem Arbeitsverzeichnis erstellt.

create django project

Führen Sie als Nächstes den folgenden Befehl aus, um einen zufälligen Schlüssel für Ihr Django-Projekt zu generieren. Stellen Sie sicher, dass Sie die Ausgabe kopieren, da Sie sie verwenden werden, um Ihre Django-Installation zu sichern.

python3 -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())'

Verwenden Sie nun Ihren bevorzugten Editor und öffnen Sie die Datei testapp/settings.py.

nano testapp/settings.py

Fügen Sie oben in der Datei die folgende Konfiguration ein.

import os

Fügen Sie Ihren geheimen Schlüssel in den Parameter SECRET_KEY ein.

SECRET_KEY = 'fzahzbm*wrxoleqb0^-3%%tf^y!b6lsc5-c#2^@#s6gkyrl2ef'

Geben Sie Ihre lokale IP-Adresse und den lokalen Domainnamen in den Parameter ALLOWED_HOSTS ein.

ALLOWED_HOSTS = ['127.0.0.1','192.168.10.15','first-django.dev']

Ändern Sie die Standarddatenbankkonfiguration mit den PostgreSQL-Serverdetails wie folgt:

DATABASES = {  
    'default': {  
        'ENGINE': 'django.db.backends.postgresql_psycopg2',  
        'NAME': 'djangodb',  
        'USER': 'django',  
        'PASSWORD': 'p4ssw0rd',  
        'HOST': '127.0.0.1',  
        'PORT': '5432',  
    }  
}

Fügen Sie schließlich den Parameter STATIC_ROOT hinzu, um ein Verzeichnis zum Speichern statischer Dateien zu definieren.

STATIC_ROOT = os.path.join(BASE_DIR, "static/")

Speichern Sie die Datei und beenden Sie den Editor, wenn Sie fertig sind.

Datenbank migrieren und statische Dateien generieren

Bevor Sie die Datenbank migrieren, führen Sie den folgenden Befehl aus, um sicherzustellen, dass Sie eine ordnungsgemäße Datenbankkonfiguration haben.

python3 manage.py check --database default

Wenn kein Fehler auftritt, führen Sie den folgenden Befehl aus, um die Datenbank zu migrieren.

python3 manage.py makemigrations  
python3 manage.py migrate

Wenn alles gut geht, sollten Sie den Datenbank-Migrationsprozess wie folgt sehen:

migrating database

Führen Sie schließlich den folgenden Befehl aus, um statische Dateien für Ihr Django-Projekt zu generieren. Nach der Ausführung des Befehls wird das neue Verzeichnis static erstellt und statische Dateien werden darin generiert.

python3 manage.py collectstatic

Unten sehen Sie die Ausgabe beim Generieren statischer Dateien.

Admin-Benutzer erstellen und Django ausführen

Führen Sie den folgenden Befehl aus, um den Admin-Benutzer für Ihr Django-Projekt zu erstellen.

python3 manage.py createsuperuser

Geben Sie Ihre E-Mail-Adresse und Ihr Passwort ein, wenn Sie dazu aufgefordert werden.

create super user

Sobald der Admin-Benutzer erstellt ist, führen Sie den folgenden Befehl aus, um Ihr Django-Projekt auszuführen.

python3 manage.py runserver 0.0.0.0:8080

Nachdem der Befehl ausgeführt wurde, wird Ihr Django-Projekt auf Ihrer lokalen IP-Adresse auf Port 8080 ausgeführt.

runnging django project

Öffnen Sie jetzt Ihren Webbrowser und besuchen Sie die Server-IP-Adresse, gefolgt von Port 8080, http://192.168.10.15:8080/. Wenn Ihre Django-Installation erfolgreich war, sollten Sie die Standard-Django-Index.html-Seite wie folgt sehen:

django index.html

Greifen Sie nun über den URL-Pfad /admin auf Ihre Django-Verwaltung zu, http://192.168.10.15:8080/admin. Geben Sie Ihren Django-Admin-Benutzer und Ihr Passwort ein und klicken Sie auf Anmelden.

django login

Sie sollten ein Beispiel für ein Django-Benutzer-Dashboard wie folgt sehen:

django dashboard

Drücken Sie Ctrl+c, um den Prozess zu beenden.

Django mit Gunicorn und Supervisor ausführen

An diesem Punkt haben Sie die Django-Installation abgeschlossen und Ihr erstes Django-Projekt erstellt. Im nächsten Schritt konfigurieren Sie Django, um im Hintergrund zu laufen, indem Sie den Gunicorn WSGI-Server und den Supervisor-Prozessmanager nutzen.

Gunicorn installieren

Innerhalb der venv-Virtual-Umgebung führen Sie den folgenden pip-Befehl aus, um gunicorn zu installieren.

pip install gunicorn

install gunicorn

Führen Sie nun den folgenden Befehl aus, um die venv-Virtual-Umgebung zu deaktivieren und zu Ihrem Root-Benutzer zurückzukehren.

deactivate  
exit

Django mit Gunicorn und Supervisor ausführen

Erstellen Sie eine neue Supervisor-Konfiguration /etc/supervisor/conf.d/testapp.conf mit dem folgenden nano-Editor-Befehl.

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

Fügen Sie die folgende Konfiguration ein und stellen Sie sicher, dass Sie die detaillierten Informationen zum Anwendungsnamen, den Pfad des Projekts und den Benutzer mit Ihren Informationen ändern. In diesem Beispiel führen Sie Ihr Django-Projekt unter dem UNIX-Socket /home/bob/testdjango/testapp.sock aus.

[program:testapp]   
command=/bin/bash -c 'source /home/bob/testdjango/venv/bin/activate; gunicorn -t 3000 --workers 3 --bind unix:unix:/home/bob/testdjango/testapp.sock testapp.wsgi:application -w 2'  
directory=/home/bob/testdjango  
user=bob  
group=www-data  
autostart=true    
autorestart=true    
stdout_logfile=/home/bob/testdjango/testapp.log    
stderr_logfile=/home/bob/testdjango/error.log

Speichern Sie die Datei und beenden Sie den Editor, wenn Sie fertig sind.

Führen Sie schließlich den folgenden Befehl aus, um den Supervisor-Dienst neu zu starten und die Änderungen anzuwenden. Überprüfen Sie dann den Dienst des Supervisors, um sicherzustellen, dass der Dienst läuft.

sudo systemctl restart supervisor  
sudo systemctl status supervisor

running django with gunicorn supervisor

Django über Supervisorctl überprüfen

Führen Sie den folgenden supervisorctl-Befehl aus, um den Anwendungsstatus zu überprüfen, der innerhalb des Supervisors läuft.

sudo supervisorctl status

Sie sollten sehen, dass die testapp-Anwendung mit PID 2577 läuft.

Überprüfen Sie schließlich Ihre Django-Anwendung mit dem folgenden curl-Befehl.

curl --unix-socket /home/bob/testdjango/testapp.sock 127.0.0.1

Wenn alles gut geht, sollten Sie den Quellcode der index.html-Seite Ihres Django-Projekts sehen.

checking django within supervisor

Nginx als Reverse-Proxy für Django konfigurieren

Jetzt, da Ihr Django-Projekt im Hintergrund läuft, besteht der nächste Schritt darin, Nginx als Reverse-Proxy für Django einzurichten. Das folgende Beispiel verwendet einen lokalen Domainnamen.

Erstellen Sie eine neue Nginx-Serverblockkonfiguration /etc/nginx/sites-available/django mit dem folgenden nano-Editor.

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

Fügen Sie die folgende Konfiguration ein und stellen Sie sicher, dass Sie den Domainnamen im Parameter server_name ändern.

server {  
    listen 80;  
    server_name first-django.dev;  
  
    location = /favicon.ico { access_log off; log_not_found off; }  
    try_files $uri @django;  
    location /static {  
        alias /home/bob/testdjango/static/;  
    }  
  
    location @django {  
        proxy_set_header Host $http_host;  
        proxy_set_header X-Real-IP $remote_addr;  
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
        proxy_set_header X-Forwarded-Proto $scheme;  
        proxy_pass http://unix:/home/bob/testdjango/testapp.sock;  
    }  
}

Speichern Sie die Datei und beenden Sie den Editor, wenn Sie fertig sind.

Führen Sie nun den folgenden Befehl aus, um den Serverblock /etc/nginx/sites-available/django zu aktivieren, und überprüfen Sie die Nginx-Syntax, um sicherzustellen, dass Sie eine ordnungsgemäße Syntax haben.

sudo ln -s /etc/nginx/sites-available/django /etc/nginx/sites-enabled/  
sudo nginx -t

Sie sollten die Ausgabe syntax is ok - test is successful erhalten, wenn Sie eine ordnungsgemäße Nginx-Syntax haben.

Starten Sie schließlich Ihren Nginx-Dienst, indem Sie den folgenden Befehl ausführen und die Änderungen anwenden, die Sie vorgenommen haben.

sudo systemctl restart nginx

Damit ist Ihr Django-Projekt über einen lokalen Domainnamen zugänglich.

Bearbeiten Sie auf Ihrem lokalen Computer die Datei /etc/hosts für Linux oder C:\Windows\System32\drivers\etc\hosts für Windows. Definieren Sie dann Ihre Server-IP-Adresse und den Domainnamen wie folgt.

192.168.10.15  first-django.dev

Speichern Sie die Datei und beenden Sie den Editor, wenn Sie fertig sind.

Gehen Sie zurück zu Ihrem Webbrowser und besuchen Sie Ihren lokalen Domainnamen. Sie sollten die Standard-Index.html-Seite Ihres Django-Projekts sehen.

Fazit

Zusammenfassend haben Sie durch die Befolgung dieses schrittweisen Leitfadens das Django-Webframework mit PostgreSQL, Nginx, Gunicorn und Supervisor auf Debian 12 installiert. Sie haben gelernt, wie man ein Django-Projekt mit PostgreSQL als Standarddatenbank erstellt und Django mit Gunicorn und Supervisor ausführt. Sie können jetzt Ihre Anwendung mit Django erstellen und entwickeln.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.