Konteineru ievietošana ir episka funkcija, kas ļauj mums, izstrādātājiem, iesaiņot lietojumprogrammu kopā ar nepieciešamajām atkarībām vienā vienībā. Pēc tam mēs varam pārvietot konteineru un izvietot lietojumprogrammu dažādās vidēs, neuztraucoties par saderību.
Kas ir Kolba?
Flask ir minimālistisks un viegls Python mikro tīmekļa ietvars. Tas nodrošina būtisku līdzekli un bibliotēkas, kas nepieciešamas, lai izveidotu vieglu tīmekļa lietojumprogrammu, izmantojot Python valodu.
Flask izmanto Web Server Gateway Interface vai WSGI standartu, kas ļauj mums iekļaut minimālistisku dizainu ar elastīgu modeli, kas var apstrādāt HTTP pieprasījumu un citas funkcijas. Piemēram, Flask atbalsta tīmekļa funkcijas, piemēram, maršrutēšanu, datu bāzes un daudz ko citu.
Priekšnosacījumi:
Lai sekotu līdzi šajā apmācībā sniegtajam kodam un komandām, pārliecinieties, vai jums ir šādi rīki:
- Jūsu datorā ir instalēts Python tulks (ieteicama versija 3.11 un jaunāka versija)
- Instalētais Docker dzinējs resursdatorā (ieteicama versija 23 un jaunāka versija)
- Teksta redaktors vai IDE pēc jūsu izvēles
Ja ir izpildītas norādītās prasības, mēs varam turpināt šo apmācību.
Izveidojiet Kolbas lietojumprogrammu
Kā jūs varat uzminēt, pirmais solis ir izveidot Python lietojumprogrammu, kuru mēs vēlamies konteinerizēt. Mūsu gadījumā mēs to demonstrējam ar minimālistisku lietotni, kas izdrukā “sveiki pasaule”.
Izveidojiet jaunu direktoriju, lai saglabātu projekta avota kodu, un izveidojiet Python failu ar nosaukumu “app.py”.
Rediģējiet “app.py” ar savu iecienītāko teksta redaktoru vai IDE un pievienojiet lietojumprogrammas kodu šādi:
no kolba imports Kolbalietotne = Kolba ( __vārds__ )
@ lietotne. maršruts ( '/' )
def Sveika pasaule ( ) :
atgriezties '
Sveika, pasaule!
'
Izveidojiet Docker failu
Tālāk mums ir jādefinē instrukcijas, kas ļauj mums iesaiņot lietojumprogrammu kā Docker attēlu. Mēs izmantojam Dockerfile, kurā ir visas instrukcijas un rīki attēla iestatīšanai.
Tajā pašā direktorijā, kur “hello.py”, izveidojiet jaunu failu ar nosaukumu “Dockerfile” bez paplašinājuma. Palaidiet šādu komandu:
$ pieskarieties DockerfileRediģējiet failu un pievienojiet kodu šādi:
Izmantojiet oficiālo Python attēlu kā pamata attēlu.
NO python: 3.12 -rc-slimWORKDIR /app
KOPĒT. /app
# Instalējiet Kolbu
RUN PIP instalēšana -- bez kešatmiņas- tu -r prasības. txt
# Atklājiet lietotnes Flask portu 5000
ATKLĀJOT 5000
# palaidiet lietojumprogrammu Flask
CMD [ 'pitons' , 'app.py' ]
Iepriekšējais Dockerfile veic šādas darbības:
- Kā pamata attēlu izmanto oficiālo Python 3.12 slim attēlu
- Iestata darba direktoriju konteinerā uz “/app”
- Iekopē projekta direktorijas saturu konteinerā
- Instalē Flask un visas citas atkarības, palaižot “pip install”, izmantojot failu “requirements.txt”.
- Atklāj 5000. portu lietojumprogrammai Flask
- Definē komandu, lai palaistu programmu Flask
Pārliecinieties, vai projekta direktorijā eksistē fails “requirements.txt”, un pievienojiet faila saturu, kā parādīts tālāk.
Kolba == 2.3.3Šajā gadījumā mēs norādām, ka vēlamies instalēt Flask versiju 2.3.3.
Izveidojiet Docker attēlu
Tagad, kad mums ir gatava lietojumprogramma Flask un Dockerfile, mēs varam turpināt un izveidot attēlu ar šādu komandu:
docker build -t flask-docker-app.Pirms iepriekšējās komandas palaišanas pārliecinieties, vai atrodaties projekta direktorijā. Varat aizstāt lietotni Flask-docker ar nosaukumu, ko vēlaties piešķirt savam attēlam.
Palaidiet Docker konteineru
Ja ir izveidots Docker attēls, mēs varam palaist konteineru, pamatojoties uz attēlu, izmantojot komandu “docker run” šādi:
docker palaist - lpp 5000 : 5000 flas-docker-appTam vajadzētu izveidot konteineru un kartēt portu 5000 no konteinera uz portu 5000 resursdatora sistēmā.
Kad tas ir izpildīts, atveriet pārlūkprogrammu un dodieties uz http://localhost:5000 .
Jums vajadzētu redzēt 'Sveika, pasaule!' ziņojumu no lietojumprogrammas Flask.
Secinājums
Šajā apmācībā jūs uzzinājāt, kā konteinerā ievietot vienkāršu Python Flask lietojumprogrammu, izmantojot Docker.