A konténerezés egy nagyszerű funkció, amely lehetővé teszi számunkra, a fejlesztők számára, hogy egy alkalmazást a szükséges függőségekkel együtt egyetlen egységbe csomagoljunk. Ezután áthelyezhetjük a tárolót, és telepíthetjük az alkalmazást a különböző környezetekben anélkül, hogy aggódnunk kellene a kompatibilitás miatt.
Mi az a lombik?
A Flask egy minimalista és könnyű mikro webes keretrendszer a Python számára. Ez biztosítja az alapvető szolgáltatást és könyvtárakat, amelyek a Python nyelvet használó könnyű webalkalmazások létrehozásához szükségesek.
A Flask a Web Server Gateway Interface vagy a WSGI szabványt követi, amely lehetővé teszi, hogy minimalista dizájnt építsünk be rugalmas mintázattal, amely képes kezelni a HTTP kéréseket és más funkciókat. A Flask például támogatja az olyan webes szolgáltatásokat, mint az útválasztás, az adatbázisok stb.
Előfeltételek:
Az oktatóanyagban található kód és parancsok követéséhez győződjön meg arról, hogy rendelkezik a következő eszközökkel:
- Python interpreter telepítve a gépére (a 3.11-es és újabb verzió ajánlott)
- Telepített Docker motor a gazdagépen (a 23-as és újabb verzió ajánlott)
- Választott szövegszerkesztő vagy IDE
Ha a megadott követelmények teljesülnek, folytathatjuk ezt az oktatóanyagot.
Hozza létre a Lombik alkalmazást
Ahogy sejtheti, az első lépés a Python alkalmazás létrehozása, amelyet konténerbe szeretnénk helyezni. A mi esetünkben egy minimalista alkalmazással mutatjuk be, amely a „hello world” feliratot írja ki.
Hozzon létre egy új könyvtárat a projekt forráskódjának tárolására, és hozzon létre egy „app.py” nevű Python-fájlt.
Szerkessze az „app.py” fájlt kedvenc szövegszerkesztőjével vagy IDE-jével, és adja hozzá az alkalmazás kódját az alábbiak szerint:
tól től lombik import Lombikkb = Lombik ( __név__ )
@ kb. útvonal ( '/' )
def Helló Világ ( ) :
Visszatérés '
Hello, World!
'
Hozzon létre egy Docker-fájlt
Ezután meg kell határoznunk azokat az utasításokat, amelyek lehetővé teszik, hogy az alkalmazást Docker-képként csomagoljuk. A Dockerfile-t használjuk, amely tartalmazza a kép beállításához szükséges összes utasítást és eszközt.
Ugyanabban a könyvtárban, mint a „hello.py”, hozzon létre egy új fájlt „Dockerfile” néven kiterjesztés nélkül. Futtassa a következő parancsot:
$ érintse meg a Dockerfile-tSzerkessze a fájlt, és adja hozzá a kódot az alábbiak szerint:
Használja a hivatalos Python-képet alapképként.
pythonból: 3.12 -rc-slimWORKDIR /app
MÁSOLÁS. /app
# Telepítse a Lombik
FUTASSA pip install --no-cache- te -r követelmények. txt
# Tegye szabaddá az 5000-es portot a Flask alkalmazáshoz
KIFEJEZNI 5000
# futtassa a Flask alkalmazást
CMD [ 'piton' , 'app.py' ]
Az előző Dockerfile a következő műveleteket hajtja végre:
- A hivatalos Python 3.12 vékony képet használja alapképként
- A tárolóban lévő munkakönyvtárat „/app” értékre állítja
- A projektkönyvtár tartalmát a tárolóba másolja
- Telepíti a Flask-ot és minden egyéb függőséget a „pip install” futtatásával a „requirements.txt” fájl használatával
- Feltárja az 5000-es portot a Flask alkalmazás számára
- Meghatározza a Flask alkalmazás futtatásához szükséges parancsot
Győződjön meg arról, hogy a „requirements.txt” fájl létezik a projektkönyvtárban, és adja hozzá a fájl tartalmát az alábbiak szerint:
Lombik == 2.3.3Ebben az esetben megadjuk, hogy a Flask 2.3.3-as verzióját szeretnénk telepíteni.
A Docker Image létrehozása
Most, hogy készen áll a Flask alkalmazás és a Dockerfile, folytathatjuk és elkészíthetjük a képet a következő paranccsal:
docker build -t flask-docker-app .Az előző parancs futtatása előtt győződjön meg arról, hogy a projektkönyvtárban van. A lombik-docker-alkalmazást lecserélheti a képéhez rendelni kívánt névre.
Futtassa a Docker-tárolót
A felépített Docker-képpel a kép alapján futtathatjuk a tárolót a „docker run” paranccsal az alábbiak szerint:
dokkolófuttatás -p 5000 : 5000 lombik-docker-appEnnek létre kell hoznia egy tárolót, és le kell képeznie a tároló 5000-es portját a gazdarendszer 5000-es portjára.
A végrehajtás után nyissa meg a böngészőt, és navigáljon ide http://localhost:5000 .
Látnod kell a 'Hello, World!' üzenetet a Flask alkalmazásból.
Következtetés
Ebben az oktatóanyagban megtanulta, hogyan helyezhet el egy egyszerű Python Flask alkalmazást a Docker segítségével.