Docker bevezető útmutató: Gyorsan konténerizáld az alkalmazásodat

2/18/2026
6 min read
# Docker bevezető útmutató: Gyorsan konténerizáld az alkalmazásodat

A Docker a modern szoftverfejlesztés és telepítés nélkülözhetetlen részévé vált. Bár a Kubernetes körüli viták mindent elborítanak, a Docker továbbra is sok vállalat elsődleges eszköze az alkalmazások építéséhez, teszteléséhez és telepítéséhez. Ez a cikk bevezet a Docker használatába, megismertet a legfontosabb fogalmakkal, és egy gyakorlati példát is ad, amely segít az alkalmazás konténerizálásának elkezdésében.

## Docker alapfogalmak

A gyakorlati megvalósítás előtt elengedhetetlen a Docker néhány alapfogalmának megértése:

*   **Kép (Image):** A kép egy csak olvasható sablon, amely mindent tartalmaz, ami az alkalmazás futtatásához szükséges: kódot, futtatókörnyezetet, rendszerszintű eszközöket, könyvtárakat és függőségeket. Hasonló a virtuális gép képekhez, de sokkal könnyebb.

*   **Konténer (Container):** A konténer egy képből létrehozott futó példány. Ez a kép futásidejű példánya, amely tartalmazza az alkalmazást és annak összes függőségét. A konténerek egymástól el vannak szigetelve, saját fájlrendszerrel, folyamatokkal és hálózati térrel rendelkeznek.

*   **Docker Hub:** A Docker Hub egy nyilvános képtár, ahonnan előre elkészített képeket tölthetsz le, vagy feltöltheted a saját képeidet. Hasonló a GitHubhoz, de kifejezetten Docker képekhez.

*   **Dockerfile:** A Dockerfile egy szöveges fájl, amely tartalmazza a Docker kép létrehozásához szükséges összes utasítást. A Dockerfile megírásával automatizálhatod a kép létrehozási folyamatát.

*   **Docker Compose:** A Docker Compose egy eszköz többkonténeres Docker alkalmazások definiálására és futtatására. Lehetővé teszi, hogy YAML fájlokkal konfiguráld az alkalmazás szolgáltatásait, majd egyetlen paranccsal elindítsd vagy leállítsd az összes szolgáltatást.

## Docker telepítése

Először telepítened kell a Dockert. A Docker különféle operációs rendszerekhez kínál telepítőcsomagokat. Látogass el a [Docker hivatalos weboldalára](https://www.docker.com/get-started/), és kövesd a megfelelő utasításokat a telepítéshez.

A telepítés befejezése után a `docker --version` parancs futtatásával ellenőrizheted, hogy a Docker megfelelően lett-e telepítve.

## Egy egyszerű Python alkalmazás konténerizálása

Létrehozunk egy egyszerű Python alkalmazást, és a Docker segítségével konténerizáljuk.

### 1. Python alkalmazás létrehozása

Hozz létre egy `app.py` nevű fájlt a következő kóddal:

```python
from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello, Docker!"

if __name__ == "__main__":
    app.run(debug=True, host='0.0.0.0')

Ez az egyszerű Flask alkalmazás a gyökérútvonalon / a "Hello, Docker!" üzenetet adja vissza.

2. requirements.txt fájl létrehozása

Az alkalmazás a Flask könyvtártól függ, ezért létre kell hoznunk egy requirements.txt fájlt a függőségek deklarálásához.

Flask

3. Dockerfile létrehozása

Hozz létre egy Dockerfile nevű fájlt, és add hozzá a következő tartalmat:

# Használd a hivatalos Python képet alap képként
FROM python:3.9-slim-buster

# Állítsd be a munkakönyvtárat
WORKDIR /app

# Másold a requirements.txt fájlt a munkakönyvtárba
COPY requirements.txt .

# Telepítsd a függőségeket
RUN pip install --no-cache-dir -r requirements.txt

Alkalmazás kódjának másolása a munkakönyvtárba

COPY app.py .

5000-es port közzététele

EXPOSE 5000

Indítási parancs definiálása

CMD ["python", "app.py"]


**Dockerfile leírás:**

*   `FROM python:3.9-slim-buster`: A bázis image megadása, ami a Python 3.9 karcsúsított verziója.
*   `WORKDIR /app`: A konténeren belüli munkakönyvtár beállítása `/app`-re.
*   `COPY requirements.txt .`: A `requirements.txt` fájl másolása az aktuális könyvtárból a konténer `/app` könyvtárába.
*   `RUN pip install --no-cache-dir -r requirements.txt`: A `pip` parancs futtatása a konténeren belül a `requirements.txt` fájlban megadott függőségek telepítéséhez. A `--no-cache-dir` paraméter csökkentheti az image méretét.
*   `COPY app.py .`: Az `app.py` fájl másolása az aktuális könyvtárból a konténer `/app` könyvtárába.
*   `EXPOSE 5000`: Deklarálja, hogy a konténer az 5000-es portot fogja figyelni.
*   `CMD ["python", "app.py"]`: Meghatározza a konténer indításakor végrehajtandó parancsot.

### 4. Docker image létrehozása

A `Dockerfile`-t tartalmazó könyvtárban futtassa a következő parancsot a Docker image létrehozásához:

```bash
docker build -t my-python-app .
  • docker build: Az image létrehozására szolgáló parancs.
  • -t my-python-app: Egy név (my-python-app) megadása az image-hez.
  • .: A Dockerfile-t tartalmazó könyvtár megadása (az aktuális könyvtár).

A build folyamat eltarthat egy ideig, a hálózati sebességtől és a függőségek méretétől függően.

5. Docker konténer futtatása

A következő parancs segítségével futtathatja a Docker konténert:

docker run -d -p 5000:5000 my-python-app
  • docker run: A konténer futtatására szolgáló parancs.
  • -d: A konténer leválasztott módban történő futtatása (a háttérben fut).
  • -p 5000:5000: A gazdagép 5000-es portjának leképezése a konténer 5000-es portjára.
  • my-python-app: A használni kívánt image nevének megadása.

6. Az alkalmazás ellenőrzése

A böngészőben látogasson el a http://localhost:5000 címre, és látnia kell a "Hello, Docker!" üzenetet.

7. A konténer leállítása és törlése

A következő paranccsal állíthatja le a konténert:

docker stop 

`` A docker ps paranccsal megtekinthető.

A következő paranccsal törölheti a konténert:

docker rm 

Docker Compose bevezetés

Ha az alkalmazás több szolgáltatásból áll, a Docker Compose segítségével kezelheti azokat.

1. docker-compose.yml fájl létrehozása

Létre kell hozni egy docker-compose.yml nevű fájlt, és adja hozzá a következő tartalmat:

version: "3.9"
services:
  web:
    image: my-python-app
    ports:
      - "5000:5000"

docker-compose.yml leírás:* version: "3.9": Meghatározza a Docker Compose fájl verzióját.

  • services: Meghatározza az alkalmazás szolgáltatásait.
  • web: Meghatároz egy "web" nevű szolgáltatást.
  • image: my-python-app: Meghatározza a szolgáltatás által használt image-et.
  • ports: Meghatározza a port hozzárendeléseket.

2. Az alkalmazás elindítása

A docker-compose.yml fájlt tartalmazó könyvtárban futtassa a következő parancsot az alkalmazás elindításához:

docker-compose up -d
  • docker-compose up: Az alkalmazás elindításának parancsa.
  • -d: A konténerek leválasztott módban futtatása.

3. Az alkalmazás leállítása

Az alkalmazás leállításához használja a következő parancsot:

docker-compose down

Docker biztonsági legjobb gyakorlatok

A megbeszélésből látható, hogy a Docker image-ek biztonsága fontos kérdés. Íme néhány Docker biztonsági legjobb gyakorlat:

  • Hivatalos image-ek használata: Lehetőleg a hivatalos image-eket használja, ezeket általában biztonsági szempontból átvizsgálják és karbantartják.
  • Image-ek sebezhetőségeinek vizsgálata: Használjon olyan eszközöket, mint a Trivy, hogy átvizsgálja az image-ek ismert sebezhetőségeit, és időben frissítse az image-eket.
  • A legkisebb jogosultság elve: Kerülje a konténerek root felhasználóként történő futtatását.
  • Konténer erőforrások korlátozása: Használjon cgroups-t a konténerek CPU és memória használatának korlátozására.
  • Image-ek rendszeres frissítése: Tartsa naprakészen az image-eket a biztonsági rések javítása érdekében.
  • Biztonsági szkennelő eszközök használata: Az olyan eszközök, mint a Snyk, Clair integrálhatók a CI/CD folyamatba, és automatikusan átvizsgálják az image-ek sebezhetőségeit.

KövetkeztetésEz a cikk egy Docker gyors útmutatót nyújt, amely lefedi a legfontosabb fogalmakat, a telepítési lépéseket és egy egyszerű Python alkalmazás konténerizálási példáját. Ezen alapok elsajátításával elkezdheted a Docker használatát alkalmazásaid építéséhez, teszteléséhez és telepítéséhez. Ne feledd, a biztonság kiemelten fontos, mindig figyelj a Docker image-ek biztonságára, és tegyél megfelelő intézkedéseket az alkalmazásaid védelmére. Bár a Kubernetes nagyméretű konténer-vezénylésben erős, a Docker sok esetben továbbra is egy egyszerű és hatékony megoldás. A Docker elsajátításával jobban meg tudsz felelni a modern szoftverfejlesztés és -telepítés kihívásainak.

Published in Technology

You Might Also Like

Hogyan használjuk a felhőalapú számítástechnikai technológiát: Az első felhőinfrastruktúra teljes útmutatójaTechnology

Hogyan használjuk a felhőalapú számítástechnikai technológiát: Az első felhőinfrastruktúra teljes útmutatója

[[HTMLPLACEHOLDER0]] [[HTMLPLACEHOLDER1]] [[HTMLPLACEHOLDER2]] [[HTMLPLACEHOLDER3]] [[HTMLPLACEHOLDER4]] [[HTMLPLACEHOLD...

Figyelmeztetés! Claude Code atyja kijelenti: 1 hónap múlva a Plan Mode használata nélkül eltűnik a szoftvermérnök címTechnology

Figyelmeztetés! Claude Code atyja kijelenti: 1 hónap múlva a Plan Mode használata nélkül eltűnik a szoftvermérnök cím

Figyelmeztetés! Claude Code atyja kijelenti: 1 hónap múlva a Plan Mode használata nélkül eltűnik a szoftvermérnök cím N...

2026年 Top 10 深度学习资源推荐Technology

2026年 Top 10 深度学习资源推荐

2026年 Top 10 深度学习资源推荐 随着深度学习在各个领域的迅速发展,越来越多的学习资源和工具涌现出来。本文将为您推荐2026年最值得关注的十个深度学习资源,帮助您在这一领域中快速成长。 1. Coursera Deep Learn...

2026-os Top 10 AI ügynök: A kulcsfontosságú jellemzők elemzéseTechnology

2026-os Top 10 AI ügynök: A kulcsfontosságú jellemzők elemzése

2026-os Top 10 AI ügynök: A kulcsfontosságú jellemzők elemzése Bevezetés A mesterséges intelligencia gyors fejlődésével ...

2026-os Top 10 AI Eszköz Ajánlás: Az Mesterséges Intelligencia Valódi Potenciáljának KiaknázásaTechnology

2026-os Top 10 AI Eszköz Ajánlás: Az Mesterséges Intelligencia Valódi Potenciáljának Kiaknázása

2026-os Top 10 AI Eszköz Ajánlás: Az Mesterséges Intelligencia Valódi Potenciáljának Kiaknázása A technológia gyors fejl...

2026年 Top 10 AWS工具和资源推荐Technology

2026年 Top 10 AWS工具和资源推荐

2026年 Top 10 AWS工具和资源推荐 在快速发展的云计算领域,Amazon Web Services (AWS) 一直是领军者,提供丰富的服务和工具,帮助开发者、企业和技术专家在云上有效工作。以下是2026年值得关注的十大AWS工...