Python Flask Dockerissa

Python Flask Dockerissa



Tässä opetusohjelmassa opimme säilyttämään Python Flask -sovelluksen Dockerin avulla.

Säiliöinti on eeppinen ominaisuus, jonka avulla kehittäjät voivat pakata sovelluksen ja tarvittavat riippuvuudet yhdeksi yksiköksi. Voimme sitten siirtää säilöä ja ottaa sovelluksen käyttöön eri ympäristöissä ilman, että meidän tarvitsee huolehtia yhteensopivuudesta.

Mikä on pullo?

Flask on minimalistinen ja kevyt mikroverkkokehys Pythonille. Se tarjoaa olennaisen ominaisuuden ja kirjastot, joita tarvitaan kevyen verkkosovelluksen rakentamiseen Python-kielellä.







Flask noudattaa Web Server Gateway Interface- tai WSGI-standardia, jonka avulla voimme sisällyttää minimalistisen suunnittelun joustavaan kuvioon, joka pystyy käsittelemään HTTP-pyyntöjä ja muita ominaisuuksia. Esimerkiksi Flask tukee verkkoominaisuuksia, kuten reititystä, tietokantoja ja paljon muuta.



Edellytykset:

Jotta voit seurata tässä opetusohjelmassa annettua koodia ja komentoja, varmista, että sinulla on seuraavat työkalut:



  1. Python-tulkki asennettu koneellesi (suositus on 3.11 ja uudempi)
  2. Isäntäkoneeseen asennettu Docker-moottori (suositus on 23 tai uudempi)
  3. Valitsemasi tekstieditori tai IDE

Kun annetut vaatimukset täyttyvät, voimme jatkaa tätä opetusohjelmaa.





Luo pullosovellus

Kuten arvata saattaa, ensimmäinen askel on Python-sovelluksen luominen, jonka haluamme säilöä. Meidän tapauksessamme esittelemme sen minimalistisella sovelluksella, joka tulostaa 'hello world'.

Luo uusi hakemisto projektin lähdekoodin tallentamiseksi ja luo Python-tiedosto nimeltä 'app.py'.



Muokkaa 'app.py' suosikkitekstieditorillasi tai IDE:lläsi ja lisää sovelluksesi koodi seuraavasti:

alkaen pullo tuonti Pullo

sovellus = Pullo ( __nimi__ )
@ sovellus. reitti ( '/' )
def Hei maailma ( ) :
palata '

Hei, maailma!

'

Luo Docker-tiedosto

Seuraavaksi meidän on määritettävä ohjeet, joiden avulla voimme pakata sovelluksen Docker-kuvaksi. Käytämme Docker-tiedostoa, joka sisältää kaikki ohjeet ja työkalut kuvan asettamiseen.

Luo samaan hakemistoon kuin 'hello.py' uusi tiedosto nimeltä 'Dockerfile' ilman tunnistetta. Suorita seuraava komento:

$ kosketa Dockerfileä

Muokkaa tiedostoa ja lisää koodi seuraavasti:

Käytä virallista Python-kuvaa peruskuvana.

pythonista: 3.12 -rc-slim
TYÖOHJ. /app
KOPIO . /sovellus
# Asenna pullo
SUORITA pip asennus -- no-cache- sinä -r vaatimukset. txt
# Avaa portti 5000 Flask-sovellukselle
PALJISTA 5000
# Suorita Flask-sovellus
CMD [ 'python' , 'app.py' ]

Edellinen Dockerfile suorittaa seuraavat toiminnot:

  • Käyttää peruskuvana virallista Python 3.12 slim -kuvaa
  • Asettaa säilön sisällä olevaksi työhakemistoksi '/app'
  • Kopioi projektihakemiston sisällön säilöön
  • Asentaa Flaskin ja kaikki muut riippuvuudet suorittamalla 'pip install' käyttämällä 'requirements.txt'-tiedostoa
  • Avaa portin 5000 Flask-sovellukselle
  • Määrittää komennon Flask-sovelluksen suorittamiseksi

Varmista, että 'requirements.txt'-tiedosto on olemassa projektihakemistossa, ja lisää tiedoston sisältö seuraavassa kuvatulla tavalla:

Pullo == 2.3.3

Tässä tapauksessa määritämme, että haluamme asentaa Flask-version 2.3.3.

Rakenna Docker Image

Nyt kun meillä on Flask-sovellus ja Dockerfile valmiina, voimme jatkaa ja rakentaa kuvan seuraavalla komennolla:

docker build -t flask-docker-app .

Varmista, että olet projektihakemistossa ennen edellisen komennon suorittamista. Voit korvata flask-docker-sovelluksen nimellä, jonka haluat määrittää kuvallesi.

Suorita Docker Container

Kun Docker-kuva on rakennettu, voimme ajaa säilön kuvan perusteella käyttämällä 'docker run' -komentoa seuraavasti:

docker run -s 5000 : 5000 pullo-docker-sovellus

Tämän pitäisi luoda kontti ja yhdistää portin 5000 säiliöstä porttiin 5000 isäntäjärjestelmässä.

Kun se on suoritettu, avaa selain ja siirry kohtaan http://localhost:5000 .

Sinun pitäisi nähdä 'Hei, maailma!' viesti Flask-sovelluksesta.

Johtopäätös

Tässä opetusohjelmassa opit säilyttämään yksinkertaisen Python Flask -sovelluksen Dockerin avulla.