Python Flask a Docker

Python Flask A Docker



En aquest tutorial, aprendrem a contenidor una aplicació Python Flask mitjançant Docker.

La contenerització és una característica èpica que ens permet als desenvolupadors empaquetar una aplicació juntament amb les dependències necessàries en una sola unitat. Aleshores podem moure el contenidor i desplegar l'aplicació a través d'entorns sense haver de preocupar-nos de la compatibilitat.

Què és Flask?

Flask és un marc de micro web minimalista i lleuger per a Python. Proporciona la funció essencial i les biblioteques necessàries per crear l'aplicació web lleugera utilitzant el llenguatge Python.







Flask segueix l'estàndard WSGI o Web Server Gateway Interface que ens permet incorporar un disseny minimalista amb un patró flexible que pot gestionar la sol·licitud HTTP i altres característiques. Per exemple, Flask admet les funcions web com ara l'encaminament, les bases de dades i molt més.



Requisits previs:

Per seguir el codi i les ordres que es proporcionen en aquest tutorial, assegureu-vos que teniu les eines següents:



  1. Intèrpret Python instal·lat a la vostra màquina (es recomana la versió 3.11 i posterior)
  2. Motor Docker instal·lat a la màquina amfitrió (es recomana la versió 23 i superior)
  3. Un editor de text o IDE de la vostra elecció

Amb els requisits establerts, podem continuar amb aquest tutorial.





Creeu l'aplicació Flask

Com podeu endevinar, el primer pas és crear l'aplicació Python que volem contener. Per al nostre cas, ho demostrem amb una aplicació minimalista que imprimeix 'hola món'.

Creeu un directori nou per emmagatzemar el codi font del vostre projecte i creeu un fitxer Python anomenat 'app.py'.



Editeu 'app.py' amb el vostre editor de text o IDE preferit i afegiu el codi de la vostra aplicació de la següent manera:

des de matràs importar Flascó

aplicació = Flascó ( __nom__ )
@ aplicació. ruta ( '/' )
def Hola món ( ) :
tornar '

Hola, món!

'

Creeu un Dockerfile

A continuació, hem de definir les instruccions que ens permetin empaquetar l'aplicació com a imatge de Docker. Utilitzem el Dockerfile que conté totes les instruccions i eines per configurar la imatge.

Al mateix directori que 'hello.py', creeu un fitxer nou anomenat 'Dockerfile' sense extensió. Executeu l'ordre següent:

$ toqueu Dockerfile

Editeu el fitxer i afegiu el codi de la següent manera:

Utilitzeu la imatge oficial de Python com a imatge base.

DE Python: 3.12 -rc-slim
WORKDIR /app
CÒPIA . /app
# Instal·leu Flask
RUN pip install --no-cache- vostè -r requisits. txt
# Exposa el port 5000 per a l'aplicació Flask
EXPOSAR 5000
# executeu l'aplicació Flask
CMD [ 'python' , 'app.py' ]

El Dockerfile anterior realitza les operacions següents:

  • Utilitza la imatge Slim oficial de Python 3.12 com a imatge base
  • Estableix el directori de treball dins del contenidor a '/app'
  • Copia el contingut del directori del projecte al contenidor
  • Instal·la Flask i qualsevol altra dependència executant 'pip install' mitjançant el fitxer 'requirements.txt'
  • Exposa el port 5000 per a l'aplicació Flask
  • Defineix l'ordre per executar l'aplicació Flask

Assegureu-vos que el fitxer 'requirements.txt' existeix al directori del projecte i afegiu el contingut del fitxer tal com es mostra a continuació:

Flascó == 2.3.3

En aquest cas, especifiquem que volem instal·lar la versió 2.3.3 de Flask.

Creeu la imatge Docker

Ara que tenim l'aplicació Flask i Dockerfile a punt, podem continuar i crear la imatge amb l'ordre següent:

docker build -t flask-docker-app .

Assegureu-vos que esteu al directori del projecte abans d'executar l'ordre anterior. Podeu substituir l'aplicació flask-docker pel nom que voleu assignar a la vostra imatge.

Executeu el contenidor Docker

Amb la imatge Docker creada, podem executar el contenidor basant-se en la imatge mitjançant l'ordre 'docker run' de la següent manera:

docker run -p 5000 : 5000 aplicació flask-docker

Això hauria de crear un contenidor i mapejar el port 5000 del contenidor al port 5000 del sistema amfitrió.

Un cop executat, obriu el navegador i navegueu a http://localhost:5000 .

Hauríeu de veure el 'Hola, món!' missatge de l'aplicació Flask.

Conclusió

En aquest tutorial, heu après a contenidor una aplicació senzilla de Python Flask mitjançant Docker.