Python Flask στο Docker

Python Flask Sto Docker



Σε αυτό το σεμινάριο, θα μάθουμε πώς να τοποθετούμε σε κοντέινερ μια εφαρμογή Python Flask χρησιμοποιώντας το Docker.

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

Τι είναι το Flask;

Το Flask είναι ένα μινιμαλιστικό και ελαφρύ micro web πλαίσιο για την Python. Παρέχει το βασικό χαρακτηριστικό και τις βιβλιοθήκες που απαιτούνται για τη δημιουργία της ελαφριάς εφαρμογής web χρησιμοποιώντας τη γλώσσα Python.







Το Flask ακολουθεί το πρότυπο Web Server Gateway Interface ή WSGI που μας επιτρέπει να ενσωματώσουμε ένα μινιμαλιστικό σχέδιο με ένα ευέλικτο μοτίβο που μπορεί να χειριστεί το αίτημα HTTP και άλλες δυνατότητες. Για παράδειγμα, το Flask υποστηρίζει τις δυνατότητες web, όπως δρομολόγηση, βάσεις δεδομένων και άλλα.



Προαπαιτούμενα:

Για να ακολουθήσετε τον κώδικα και τις εντολές που παρέχονται σε αυτό το σεμινάριο, βεβαιωθείτε ότι διαθέτετε τα ακόλουθα εργαλεία:



  1. Εγκατεστημένος διερμηνέας Python στον υπολογιστή σας (συνιστάται η έκδοση 3.11 και νεότερη)
  2. Εγκατεστημένος κινητήρας Docker στον κεντρικό υπολογιστή (συνιστάται η έκδοση 23 και νεότερη)
  3. Ένα πρόγραμμα επεξεργασίας κειμένου ή IDE της επιλογής σας

Εφόσον πληρούνται οι δεδομένες απαιτήσεις, μπορούμε να προχωρήσουμε σε αυτό το σεμινάριο.





Δημιουργήστε την εφαρμογή Flask

Όπως μπορείτε να μαντέψετε, το πρώτο βήμα είναι η δημιουργία της εφαρμογής Python που θέλουμε να καταστήσουμε σε κοντέινερ. Για την περίπτωσή μας, το επιδεικνύουμε με μια μινιμαλιστική εφαρμογή που εκτυπώνει το 'hello world'.

Δημιουργήστε έναν νέο κατάλογο για να αποθηκεύσετε τον πηγαίο κώδικα για το έργο σας και δημιουργήστε ένα αρχείο Python με το όνομα 'app.py'.



Επεξεργαστείτε το 'app.py' με το αγαπημένο σας πρόγραμμα επεξεργασίας κειμένου ή IDE και προσθέστε τον κώδικα για την εφαρμογή σας ως εξής:

από φλάσκα εισαγωγή Φλάσκα

εφαρμογή = Φλάσκα ( __όνομα__ )
@ εφαρμογή. Διαδρομή ( '/' )
def Γειά σου Κόσμε ( ) :
ΕΠΙΣΤΡΟΦΗ '

Γεια, Κόσμε!

'

Δημιουργήστε ένα αρχείο Docker

Στη συνέχεια, πρέπει να ορίσουμε τις οδηγίες που μας επιτρέπουν να συσκευάσουμε την εφαρμογή ως εικόνα Docker. Χρησιμοποιούμε το Dockerfile που περιέχει όλες τις οδηγίες και τα εργαλεία για τη ρύθμιση της εικόνας.

Στον ίδιο κατάλογο με το 'hello.py', δημιουργήστε ένα νέο αρχείο που ονομάζεται 'Dockerfile' χωρίς επέκταση. Εκτελέστε την ακόλουθη εντολή:

$ αγγίξτε Dockerfile

Επεξεργαστείτε το αρχείο και προσθέστε τον κώδικα ως εξής:

Χρησιμοποιήστε την επίσημη εικόνα Python ως εικόνα βάσης.

ΑΠΟ python: 3.12 -rc-slim
WORKDIR /εφαρμ
ΑΝΤΙΓΡΑΦΟ . /εφαρμογή
# Εγκαταστήστε το Flask
Εκτέλεση εγκατάστασης pip --no-cache- εσείς -r απαιτήσεις. κείμενο
# Εκθέστε τη θύρα 5000 για την εφαρμογή Flask
ΕΚΘΕΣΕΙ 5000
# εκτελέστε την εφαρμογή Flask
CMD [ 'Πύθων' , 'app.py' ]

Το προηγούμενο Dockerfile εκτελεί τις ακόλουθες λειτουργίες:

  • Χρησιμοποιεί την επίσημη λεπτή εικόνα Python 3.12 ως βασική εικόνα
  • Ορίζει τον κατάλογο εργασίας μέσα στο κοντέινερ σε '/app'
  • Αντιγράφει τα περιεχόμενα του καταλόγου του έργου στο κοντέινερ
  • Εγκαθιστά το Flask και οποιεσδήποτε άλλες εξαρτήσεις εκτελώντας το 'pip install' χρησιμοποιώντας το αρχείο 'requirements.txt'
  • Εκθέτει τη θύρα 5000 για την εφαρμογή Flask
  • Καθορίζει την εντολή εκτέλεσης της εφαρμογής Flask

Βεβαιωθείτε ότι το αρχείο 'requirements.txt' υπάρχει στον κατάλογο του έργου και προσθέστε τα περιεχόμενα του αρχείου όπως φαίνεται παρακάτω:

Φλάσκα == 2.3.3

Σε αυτήν την περίπτωση, προσδιορίζουμε ότι επιθυμούμε να εγκαταστήσουμε την έκδοση 2.3.3 του Flask.

Δημιουργήστε την εικόνα Docker

Τώρα που έχουμε έτοιμα την εφαρμογή Flask και το Dockerfile, μπορούμε να προχωρήσουμε και να δημιουργήσουμε την εικόνα με την ακόλουθη εντολή:

docker build -t flask-docker-app .

Βεβαιωθείτε ότι βρίσκεστε στον κατάλογο του έργου πριν εκτελέσετε την προηγούμενη εντολή. Μπορείτε να αντικαταστήσετε το flask-docker-app με το όνομα που θέλετε να αντιστοιχίσετε στην εικόνα σας.

Εκτελέστε το Docker Container

Με τη δημιουργία της εικόνας Docker, μπορούμε να εκτελέσουμε το κοντέινερ με βάση την εικόνα χρησιμοποιώντας την εντολή 'docker run' ως εξής:

docker run -σελ 5000 : 5000 flask-docker-app

Αυτό θα πρέπει να δημιουργήσει ένα κοντέινερ και να αντιστοιχίσει τη θύρα 5000 από το κοντέινερ στη θύρα 5000 στο κεντρικό σύστημα.

Μόλις εκτελεστεί, ανοίξτε το πρόγραμμα περιήγησης και μεταβείτε στο http://localhost:5000 .

Θα πρέπει να δείτε το 'Hello, World!' μήνυμα από την εφαρμογή Flask.

συμπέρασμα

Σε αυτό το σεμινάριο, μάθατε πώς να τοποθετείτε σε κοντέινερ μια απλή εφαρμογή Python Flask χρησιμοποιώντας το Docker.