Ρύθμιση του Django στο Debian 8

Αυτό το σεμινάριο εξηγεί πώς να ρυθμίσετε το Django στο Debian 8 (jessie). Θα δείξω πώς να χρησιμοποιείτε και την Python 2 και 3 καθώς και το Nginx και το PostgreSQL.

Όλα όσα γίνονται σε αυτό το σεμινάριο γίνονται ως root.

Εγκατάσταση πακέτων

Για να ξεκινήσουμε, πρέπει να εγκαταστήσουμε ορισμένα πακέτα.

Για την Python 2:

apt-get install python-pip python-dev virtualenv nginx postgresql postgresql-contrib libpq-dev sudo gcc

Για την Python 3:

apt-get install python3-pip python3-dev virtualenv nginx postgresql postgresql-contrib libpq-dev sudo gcc

Ρύθμιση βάσεων δεδομένων

Αρχικά, συνδέουμε τον χρήστη postgres.

sudo -u postgres -s

Στη συνέχεια, δημιουργούμε μια νέα βάση δεδομένων. Το όνομα της βάσης δεδομένων μπορεί να είναι ό,τι θέλετε να είναι ( dbnameχρησιμοποιείται εδώ), αλλά πρέπει να είστε συνεπείς με την υπόλοιπη ρύθμιση.

createdb dbname

Δημιουργήστε έναν χρήστη για τη νέα βάση δεδομένων. Και πάλι, αυτό μπορεί να είναι ό,τι θέλετε, αλλά χρησιμοποίησα dbuser. Αυτό θα σας ζητήσει επίσης να ορίσετε έναν κωδικό πρόσβασης.

createuser -P dbuser

Ο χρήστης πρέπει τώρα να έχει πρόσβαση στη βάση δεδομένων. Απλώς φροντίστε να χρησιμοποιήσετε το σωστό όνομα βάσης δεδομένων και όνομα χρήστη.

psql
postgres=# GRANT ALL PRIVILEGES ON DATABASE dbname TO dbuser;
postgres=# \q

Έξοδος στο root.

exit

Ενεργοποίηση και εκκίνηση PostgreSQL:

systemctl enable postgresql
systemctl start postgresql

Ρυθμίστε το εικονικό περιβάλλον

Αντί να χρησιμοποιούμε απλώς τα παγκόσμια αρχεία python, θα χρησιμοποιούμε ένα εικονικό περιβάλλον. Ξεκινάμε δημιουργώντας έναν κατάλογο για να τα κρατήσει όλα.

mkdir -p /opt/project

Τώρα δημιουργούμε το περιβάλλον. Αυτό είναι διαφορετικό για τους χρήστες python 2 και 3.

Για την Python 2:

virtualenv . -p python

Για την Python 3:

virtualenv . -p python3

Μπείτε στο εικονικό περιβάλλον.

source bin/activate

Εγκαταστήστε τα Django, Gunicorn και psycopg2.

pip install django
pip install gunicorn
pip install psycopg2

Εάν χρειάζεστε μια συγκεκριμένη έκδοση του Django, αλλάξτε την εντολή εγκατάστασης για να ταιριάζει με την παρακάτω μορφή. Αυτό το παράδειγμα εγκαθιστά την 1.7.8.

pip install django==1.7.8

Τώρα τελειώσαμε με αυτό προς το παρόν, ώστε να μπορούμε να απενεργοποιήσουμε το εικονικό μας περιβάλλον.

deactivate

Μεταφόρτωση και διαμόρφωση έργου

Αυτή είναι η στιγμή που ανεβάζουμε το έργο μας στον διακομιστή και βεβαιωνόμαστε ότι όλες οι ρυθμίσεις του είναι σωστές. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε μέθοδο για να το κάνετε αυτό. FTP, SFTP, git, κ.λπ. είναι όλοι οι τρόποι για να γίνει αυτό. Εάν χρησιμοποιείτε το git για την παρακολούθηση του κώδικα του έργου, μπορείτε απλώς να τον κλωνοποιήσετε στον διακομιστή. Αυτή η εντολή git θα κλωνοποιήσει το έργο στον διακομιστή και θα το τοποθετήσει στο /opt/project/project/.

git clone http://example.com:project.git

Ανοίξτε το settings.pyαρχείο σε οποιοδήποτε πρόγραμμα περιήγησης κειμένου.

Πρώτα πρώτα, η λειτουργία εντοπισμού σφαλμάτων πρέπει να είναι απενεργοποιημένη. Αναζητήστε τη DEBUG = Trueγραμμή και αλλάξτε Trueσε False. Μετά από αυτό, βεβαιωθείτε ότι έχετε ALLOWED_HOSTSορίσει κάποια τιμή.

ALLOWED_HOSTS = ['*']

Αναζητήστε το DATABASESλεξικό και θα πρέπει να μοιάζει με αυτό:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'dbname',
        'USER': 'dbuser',
        'PASSWORD': 'password you set',
        'HOST': 'localhost',
        'PORT': ''
    }
}

Το τελευταίο βήμα εδώ είναι να ορίσετε μια στατική ρίζα. Τοποθετήστε τα παρακάτω ακριβώς παρακάτω STATIC_URL.

STATIC_ROOT = '/opt/project/static/'

Βγείτε από το αρχείο και δημιουργήστε τον στατικό ριζικό κατάλογο.

mkdir -p /opt/project/static

Τώρα μεταφέρετε τη βάση δεδομένων, δημιουργήστε έναν σούπερ χρήστη και συλλέξτε όλα τα στατικά αρχεία.

cd /opt/project/project
../bin/python manage.py makemigrations
../bin/python manage.py migrate
../bin/python manage.py createsuperuser
../bin/python manage.py collectstatic

Διαμόρφωση Gunicorn

Ο Gunicorn είναι ο διακομιστής WSGI που θα χρησιμοποιήσουμε. Εφόσον το Debian 8 συνοδεύεται από systemd, θα εκμεταλλευτούμε το systemd για να ξεκινήσουμε και να σταματήσουμε τον διακομιστή.

Δημιουργήστε το αρχείο /etc/systemd/system/django.serviceκαι προσθέστε το παρακάτω περιεχόμενο.

[Unit]
Description=Django with Gunicorn
After=network.target

[Service]
User=root
Group=root
WorkingDirectory=/opt/project
ExecStart=/opt/project/bin/gunicorn --workers 3 --bind 127.0.0.1:8000 project.wsgi

[Install]
WantedBy=multi-user.target

Ενεργοποιήστε και ξεκινήστε την υπηρεσία που δημιουργήσαμε.

systemctl enable django.service
systemctl start django.service

Nginx

Ίσως έχετε παρατηρήσει ότι δεσμεύσαμε τον διακομιστή Gunicorn στο 127.0.0.1. Τώρα χρειαζόμαστε έναν τρόπο πρόσβασης σε αυτό εκτός του διακομιστή. Εδώ μπαίνει το Nginx.

Δημιουργήστε το νέο αρχείο /etc/nginx/sites-available/djangoκαι προσθέστε το παρακάτω. Το domain.example.comεξάρτημα μπορεί να ρυθμιστεί σε ό,τι χρειάζεστε.

server {
        listen 80;
        server_name domain.example.com;
        access_log off;

        location /static/ {
                alias /opt/project/static/;
        }

        location / {
                proxy_pass http://127.0.0.1:8000;
        }
}

Δημιουργήστε έναν συμβολικό σύνδεσμο για να ενεργοποιήσετε αυτόν τον ιστότοπο.

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

Ενεργοποιήστε και ξεκινήστε το Nginx.

systemctl enable nginx
systemctl start nginx

συμπέρασμα

Συγχαρητήρια, έχετε τώρα έναν λειτουργικό ιστότοπο Django στο Debian VPS σας.

Αφήστε ένα σχόλιο

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα