Django è un Python opensource, completamente caricato e versatile basato su un framework che consente agli sviluppatori di creare e distribuire applicazioni Web scalabili e robuste in grado di soddisfare le elevate esigenze degli utenti finali. L'obiettivo principale di Django è semplificare l'implementazione di applicazioni Web complesse e prendersi cura di aspetti cruciali dello sviluppo delle applicazioni come l'amministrazione dei contenuti, l'autenticazione e la sicurezza.
Con Django, puoi creare qualsiasi tipo di applicazione web e chat come i siti di social network Alcune delle applicazioni popolari basate su Django includono Instagram , Spotify e Eventbrite . In questa guida, ti guideremo attraverso l'installazione e la configurazione di Django su CentOS 8.
Passaggio 1) Installa Python3 e pip su CentOS 8
Dato che Django è un toolkit basato su Python, dobbiamo assicurarci che Python sia installato. Immediatamente, installeremo Python3 e il gestore di pacchetti pip. Per ottenere ciò, esegui il comando seguente sul terminale.
$ sudo dnf install -y python36 python3-pip
Una volta completata l'installazione, puoi verificare la versione di Python3 installata eseguendo:
[[email protected] ~]$ python3 -V Python 3.6.8 [[email protected] ~]$
Per verificare la versione pip, eseguire:
[[email protected] ~]$ pip3 -V pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6) [[email protected] ~]$
Passaggio 2) Installa Django tramite pip3
Con i prerequisiti installati, procedi e installa Django web framework utilizzando il comando:
$ sudo pip3 install django
Questo richiede alcuni secondi e in pochissimo tempo l'installazione di Django sarà completa. Per verificare la versione di Django installata sul tuo sistema, esegui il comando seguente:
[[email protected] ~]$ django-admin --version 3.0.6 [[email protected] ~]$
Dall'output, puoi vedere che abbiamo installato Django versione 3.0.6
Ora copia il binario django-admin da /usr/local/bin a /usr/bin,
[[email protected] ~]$ sudo cp /usr/local/bin/django-admin /usr/bin/
Fase 3) Creazione di un progetto Django
Abbiamo appena installato Django nel precedente e in questo passaggio creeremo un progetto Django di esempio. Per questa guida chiameremo il nostro progetto linuxtechi .
Creeremo un nuovo progetto all'interno di /opt directory utilizzando django-admin comando. Quindi passa all'utente root ed esegui i comandi seguenti:
$ cd /opt $ sudo django-admin startproject linuxtechi
L'output dei comandi precedenti sarebbe il seguente
[[email protected] ~]$ cd /opt/ [[email protected] opt]$ sudo django-admin startproject linuxtechi [[email protected] opt]$ ls -l linuxtechi/ total 4 drwxr-xr-x. 2 root root 89 May 18 07:07 linuxtechi -rwxr-xr-x. 1 root root 630 May 18 07:07 manage.py [[email protected] opt]$
All'interno della directory del progetto appena creata, assicurati di trovare un'altra directory con lo stesso nome e un manage.py File Python. Dopo aver creato la nuova cartella del progetto, naviga al suo interno e migra le modifiche utilizzando il comando:
$ cd linuxtechi $ sudo python3 manage.py migrate
Il tuo output dovrebbe essere simile a quello che abbiamo di seguito:
Fase 4) Crea un account utente Django Admin
Successivamente, dobbiamo creare un account utente amministratore per accedere a Django sul front-end. Pertanto, esegui il comando seguente:
$ sudo python3 manage.py createsuperuser
Ti verrà richiesto il nome utente, l'indirizzo email e la password che confermerai in seguito.
[[email protected] linuxtechi]$ sudo python3 manage.py createsuperuser Username (leave blank to use 'root'): sysadmin Email address: [email protected] Password: Password (again): Superuser created successfully. [[email protected] linuxtechi]$
Passaggio 5) Configura il firewall per l'applicazione
Prima di distribuire la nostra applicazione, dobbiamo consentire la porta 8000, che sarà la porta predefinita che la nostra applicazione ascolterà. Procedi e apri la porta su firewalld come mostrato:
[[email protected] ~]$ sudo firewall-cmd --add-port=8000/tcp --zone=public --permanent success [[email protected] ~]$
Per le modifiche da registrare sul firewall, ricaricare il firewall come mostrato:
[[email protected] ~]$ sudo firewall-cmd --reload success [[email protected] ~]$
Per verificare che la porta 8000 sia aperta sul firewall, utilizzare il comando seguente per visualizzare le porte aperte:
[[email protected] ~]$ sudo firewall-cmd --list-ports 8000/tcp [[email protected] ~]$
Grande! L'output conferma che la porta 8000 è aperta sul firewall.
Sebbene abbiamo consentito la porta 8000 sul firewall, non è ancora possibile accedere a Django da parte di utenti esterni. Dobbiamo modificare il file settings.py all'interno della cartella di esempio e specificare l'indirizzo del server o il segno di asterisco "*" nel parametro ALLOWED_HOSTS.
Nota: Se specifichiamo l'indirizzo IP del server, possiamo accedere alla nostra applicazione solo da quell'IP e se desideri la tua applicazione di accesso da tutte le reti, specifica "*"
$ sudo vim /opt/linuxtechi/linuxtechi/settings.py
Salva e chiudi il file
Passaggio 6) Avvia l'applicazione Django
Con tutte le impostazioni e le configurazioni in atto, accendi l'applicazione Django utilizzando i comandi seguenti:
$ cd /opt/linuxtechi $ sudo python3 manage.py runserver 0.0.0.0:8000
Per accedere all'applicazione su un browser, sfoglia l'URL mostrato:
http://IP server:8000
La pagina web conferma che Django è stato installato e configurato correttamente. Per accedere alla dashboard dell'amministratore, aggiungi /admin alla fine dell'URL.
http://IP server:8000/admin
Fornisci il nome utente dell'utente amministratore Django che hai creato e la password e premi INVIO per accedere alla dashboard.
La tua dashboard dovrebbe apparire come mostrato di seguito.
Conclusione
Come hai visto, l'installazione del framework Django su CentOS 8 è un gioco da ragazzi. Django è un framework Web versatile e potente che può aiutarti a creare una miriade di applicazioni Web Python senza preoccuparti troppo delle complessità della distribuzione. Ci auguriamo che tu abbia trovato questo informativo, sentiti libero di condividere questo articolo con i tuoi amici sulle tue piattaforme di social media.