Django είναι ένα web framework υψηλού επιπέδου που επιτρέπει τη γρήγορη ανάπτυξη ασφαλών και εύκολα συντηρήσιμων ιστότοπων. Είναι ένα δωρεάν framework ανοιχτού κώδικα γραμμένο σε Python. Το Django είναι επίσης δημοφιλές για επιπλέον χαρακτηριστικά όπως η απόδοση, η ασφάλεια, η επεκτασιμότητα, η φορητότητα και η δυνατότητα συντήρησης.
Αυτός ο οδηγός θα δείξει πώς να εγκαταστήσετε το Django και να στήσετε μια απλή διαδικτυακή εφαρμογή σε Ubuntu 20.04.
Django σε Ubuntu
Υπάρχουν πολλοί τρόποι εγκατάστασης του Django στο σύστημα. Κάθε μέθοδος εξυπηρετεί διαφορετικό σκοπό.
- Καθολική εγκατάσταση: Το Django είναι άμεσα διαθέσιμο από τα επίσημα αποθετήρια πακέτων του Ubuntu. Μπορούμε να το εγκαταστήσουμε απευθείας χρησιμοποιώντας τον διαχειριστή πακέτων APT. Αν και η μέθοδος εγκατάστασης είναι απλή, προσφέρει λιγότερη ευελιξία σε σχέση με άλλες μεθόδους. Επιπλέον, ενδέχεται να μην περιέχει την τελευταία έκδοση του framework.
- Εγκατάσταση με χρήση του
pipσε ένα εικονικό περιβάλλον: Χρησιμοποιώντας εργαλεία όπως τοvenvκαι τοvirtualenv, μπορούμε να δημιουργήσουμε ένα εικονικό περιβάλλον και να εγκαταστήσουμε το Django εκεί. Το όφελος αυτής της προσέγγισης είναι ότι δεν επηρεάζει το ευρύτερο σύστημα. Επιτρέπει επίσης την προσαρμογή και τα πακέτα ανά έργο. Είναι η πιο πρακτική και συνιστώμενη μέθοδος εργασίας με το Django. - Εγκατάσταση της έκδοσης ανάπτυξης (development) του Django: Το Django είναι επίσης διαθέσιμο στο GitHub. Η τελευταία έκδοση ανάπτυξης θα έχει τα πιο πρόσφατα χαρακτηριστικά/διορθώσεις. Ωστόσο, αυτό συνοδεύεται από το κόστος πιθανών προβλημάτων απόδοσης και σταθερότητας.
Αυτός ο οδηγός προϋποθέτει ότι έχετε έναν σωστά ρυθμισμένο διακομιστή Ubuntu. Εάν δεν έχετε ακόμα διακομιστή Ubuntu, μπορείτε να ακολουθήσετε τον οδηγό μας για το πώς να στήσετε τον δικό σας διακομιστή Ubuntu.
Εγκατάσταση του Django σε Ubuntu
1. Καθολική εγκατάσταση με χρήση του διαχειριστή πακέτων
Το Django είναι άμεσα διαθέσιμο από τα επίσημα αποθετήρια πακέτων. Η διαδικασία εγκατάστασης είναι αρκετά απλή. Αρχικά, ενημερώστε το ευρετήριο πακέτων APT:
|
1 |
$ sudo apt update |
Στη συνέχεια, ελέγξτε την έκδοση της Python που είναι εγκατεστημένη. Από προεπιλογή, το Ubuntu 20.04 συνοδεύεται από την Python 3.8:
|
1 |
$ python3 -V |
Τώρα, είμαστε έτοιμοι να εγκαταστήσουμε το Django:
|
1 |
$ sudo apt install python3-django |
Μπορούμε να επαληθεύσουμε εάν η εγκατάσταση ήταν επιτυχής. Εκτελέστε την ακόλουθη εντολή για να ελέγξετε την έκδοση του Django:
|
1 |
$ django-admin --version |
Αυτό επιβεβαιώνει ότι το Django έχει εγκατασταθεί με επιτυχία. Σημειώστε ότι η έκδοση του Django δεν είναι η τελευταία σταθερή κυκλοφορία. Τη στιγμή που γράφεται αυτό το κείμενο, η τελευταία διαθέσιμη έκδοση του Django είναι η v3.2.5 (LTS release).
2. Εγκατάσταση του Django με το pip (σε εικονικό περιβάλλον)
Αυτός είναι ο συνιστώμενος τρόπος εγκατάστασης του Django επειδή προσφέρει τη μεγαλύτερη ευελιξία. Θα δημιουργήσουμε το εικονικό περιβάλλον χρησιμοποιώντας τη μονάδα venv που παρέχεται ως μέρος της τυπικής βιβλιοθήκης της Python 3. Σας επιτρέπει να δημιουργείτε εικονικά περιβάλλοντα Python και να εγκαθιστάτε πακέτα Python χωρίς να προκαλείτε αλλαγές σε άλλα σημεία του συστήματος. Μπορείτε να έχετε πολλά εικονικά περιβάλλοντα με μοναδικές ρυθμίσεις.
Ας ξεκινήσουμε. Αρχικά, χρειαζόμαστε τις Python pip and venv μονάδες:
|
1 2 |
$ sudo apt update $ sudo apt install python3-pip python3-venv |
Οι μονάδες εγκαταστάθηκαν με επιτυχία. Τώρα, θα δημιουργήσουμε έναν αποκλειστικό κατάλογο για το εικονικό περιβάλλον:
|
1 |
$ mkdir -pv ~/sample_project |
Στη συνέχεια, αλλάξτε τον ενεργό κατάλογο στον νέο κατάλογο:
|
1 |
$ cd ~/sample_project |
Τώρα, μπορούμε να πούμε στο venv να δημιουργήσει ένα εικονικό περιβάλλον μέσα στον κατάλογο. Όσο για το όνομα του περιβάλλοντος, θα πρέπει να είναι κάτι περιγραφικό:
|
1 |
$ python3 -m venv sample_project_env |
Η μονάδα venv θα δημιουργήσει ένα αντίγραφο της Python και του pip σε μια απομονωμένη δομή καταλόγου μέσα στον κατάλογο του έργου. Θα περιέχει έναν κατάλογο με το επιλεγμένο όνομα που περιλαμβάνει την ιεραρχία αρχείων όπου εγκαθίστανται όλα τα πακέτα.
Για να εγκαταστήσουμε επιπλέον πακέτα, πρέπει να ενεργοποιήσουμε το περιβάλλον:
|
1 |
$ source sample_project_env/bin/activate |
Η προτροπή του κελύφους (shell prompt) θα πρέπει να αλλάξει σε κάτι σαν αυτό:
Μέσα στο εικονικό περιβάλλον, μπορούμε τώρα να εγκαταστήσουμε το Django:
|
1 |
$ pip install django |
Verify if the installation was successful:
|
1 |
$ django-admin --version |
To leave the virtual environment, run the following command:
|
1 |
$ deactivate |
3. Installing Django development version
The Django development version is directly available on GitHub. We’ll be using git to clone and deploy it within a virtual environment.
First, ensure that we have the necessary tools installed. The following command will install venv and pip (Python modules) and git:
|
1 |
$ sudo apt update && sudo apt install python3-pip python3-venv git |
Next, clone the Django repo. It will contain all the latest features and bug fixes (at the expense of stability). We’ll clone it to a directory ~/django-dev:
|
1 |
$ git clone git://github.com/django/django ~/django-dev |
Change the current directory to the cloned repo:
|
1 |
$ cd ~/django-dev |
After that, establish a virtual environment using Python venv module:
|
1 |
$ python3 -m venv sample_project_env |
Then, activate the virtual environment:
|
1 |
$ source sample_project_env/bin/activate |
Now, we can install the Django we cloned from GitHub. Here, the flag -e refers to the “editable” mode to allow installation from version control:
|
1 |
$ pip install -e ~/django-dev |
Finally, verify the installation:
|
1 |
$ django-admin --version |
Sample Django Project
So far, we have demonstrated how to install Django on the system. Now, it’s time to put Django into action. In this section, we’ll demonstrate how to create a sample Django project. The sample project will be created within a virtual environment.
Create a directory for the sample project:
|
1 |
$ mkdir -pv ~/django-test |
Change the current directory to the project directory:
|
1 |
$ cd ~/django-test |
Then, use the venv module to establish a Python virtual environment:
|
1 |
$ python3 -m venv dummy_env |
The virtual environment is ready. Activate the environment:
|
1 |
$ source dummy_env/bin/activate |
We can install Django within the environment:
|
1 |
$ pip install django |
We can use django-admin to build the project base. Here, the sample project will be named sampleproject. The project will have a directory within the environment directory that includes all the necessary files.
manage.py: A management script that administers various Django-specific tasks.sample project: A directory with the project name that contains actual project code.
However, we don’t want a cobweb of too many nested directories. Thus, tell Django to place the files and directories in the current directory:
|
1 |
$ django-admin startproject sampleproject . |
The next step is migrating the database. By default, Django uses SQLite. Migrations apply any changes made to the Django models to the database schema. Run the following command to migrate the database:
|
1 |
$ python manage.py migrate |
Finally, we’ll establish an admin user to use the Django admin interface. Run the following command:
|
1 |
$ python manage.py createsuperuser |
It will ask for a username, an email address, and a password for the user.
ALLOWED_HOSTS in Django Settings
To test the application, we need to modify a certain directive in Django settings. Open the settings.py file in a text editor:
|
1 |
$ nano ~/django-test/sampleproject/settings.py |
We’re interested in the directive ALLOWED_HOSTS. It describes a list of addresses or domain names that can connect to the Django instance. Any incoming host request from a host that’s not on the list will raise an exception. It’s required by Django to prevent certain classes of security vulnerabilities.
Μέσα στην αγκύλη, καταχωρίστε τις διευθύνσεις IP ή τα ονόματα τομέα που σχετίζονται με τον διακομιστή Django. Κάθε στοιχείο θα αναγράφεται σε εισαγωγικά, διαχωρισμένο με κόμμα (,). Δείτε πώς θα μοιάζει η δομή της οδηγίας:
|
1 |
$ ALLOWED_HOSTS = ['<server_ip_or_domain>', '<server2_ip_or_doman>'] |
Αποθηκεύστε τη λίστα και κλείστε τον επεξεργαστή.
Δοκιμή του Διακομιστή
Μπορούμε τώρα να ξεκινήσουμε τον διακομιστή ανάπτυξης του Django. Θα παρουσιάσει ένα νέο έργο Django. Σημειώστε ότι θα πρέπει να χρησιμοποιείται μόνο για σκοπούς ανάπτυξης. Για μια πλήρη εγκατάσταση, ακολουθήστε τον επίσημο οδηγό του Django για την εγκατάσταση.
Πριν αποκτήσετε πρόσβαση στον διακομιστή ανάπτυξης, βεβαιωθείτε ότι το τείχος προστασίας επιτρέπει την πρόσβαση στη θύρα 8000. Αν ακολουθήσετε τον οδηγό εγκατάστασης διακομιστή Ubuntu οδηγό, τότε πείτε στο UFW να ανοίξει τη θύρα 8000 για επικοινωνία:
|
1 |
$ sudo ufw allow 8000 |
Το UFW είναι ένα κοινό τείχος προστασίας διαθέσιμο σε όλες τις μεγάλες διανομές Linux. Ακολουθεί ένας οδηγός που εξηγεί διάφορα βασικά στοιχεία του UFW. Ο διακομιστής ανάπτυξης είναι τώρα έτοιμος να εκτελεστεί. Ξεκινήστε τον διακομιστή:
|
1 |
$ python manage.py runserver <server_ip>:8000 |
Στη συνέχεια, επισκεφθείτε τη διεύθυνση IP του διακομιστή στη θύρα 8000 σε ένα πρόγραμμα περιήγησης ιστού. Θα σας μεταφέρει στη σελίδα καλωσορίσματος του Django:
|
1 |
$ http://<server_ip>:8000 |
Για να αποκτήσετε πρόσβαση στον πίνακα διαχείρισης του Django, προσθέστε /admin/ στο τέλος της διεύθυνσης URL:
|
1 |
$ http://<server_ip>:8000/admin/ |
Εισαγάγετε το όνομα χρήστη και τον κωδικό πρόσβασης διαχειριστή για να αποκτήσετε πρόσβαση στην ενότητα διαχείρισης:
Μπορείτε να σταματήσετε τον διακομιστή πατώντας CTRL-C στο τερματικό.
Τελικές Σκέψεις
Το έργο Django προσφέρει μια δομική βάση για το σχεδιασμό ενός πιο ολοκληρωμένου ιστότοπου. Παρέχει τα κύρια εργαλεία που απαιτούνται για την τροφοδοσία μιας διαδικτυακής εφαρμογής. Η αξιοποίηση ενός πλαισίου ιστού όπως το Django σάς επιτρέπει ταχύτερη ανάπτυξη έργων και τη διάθεση περισσότερου χρόνου στις μοναδικές πτυχές της εφαρμογής σας.
Καλή συνέχεια!












Σχόλια
Δεν υπάρχουν σχόλια ακόμα. Γράψτε το πρώτο.