Skip to content

Commit

Permalink
Format
Browse files Browse the repository at this point in the history
  • Loading branch information
the1bit committed May 2, 2024
1 parent 34e7a3e commit c446931
Showing 1 changed file with 28 additions and 35 deletions.
63 changes: 28 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Docker gyakorlati példák

Képzési anyag a Docker használatához.

Ha elakadtál, vagy kérdésed vanm, írj nekünk a [Hibajelenség / Kérdés](https://github.com/cloudsteak/mentor-klub-cloud/issues/new/choose)

## Tartalomjegyzék

- [Docker alapok](#docker-alapok)
Expand All @@ -19,46 +23,42 @@
- [DevOps CI/CD pipeline alkalmazása](#devops-cicd-pipeline-alkalmazása)
- [Azure Webalkalmazás létrehozása Docker képből](#azure-webalkalmázás-létrehozása-docker-képből)
- Példák:
- [Kód 1 - Alap python példa](./Kod1/kod1.md)
- [Kód 2 - API példa](./Kod2/README.md)
- [Kód 3 - Docker Compose példa (web + sql)](./Kod3/README.md)
- [Kód 4 - Webalkalmazás példa](./Kod4/README.md)


Képzési anyag a Docker használatához.
- [Kód 1 - Alap python példa](./Kod1/kod1.md)
- [Kód 2 - API példa](./Kod2/README.md)
- [Kód 3 - Docker Compose példa (web + sql)](./Kod3/README.md)
- [Kód 4 - Webalkalmazás példa](./Kod4/README.md)

## Docker alapok

A Docker egy innovatív eszköz, amely segít a fejlesztőknek és rendszergazdáknak az alkalmazások gyors kifejlesztésében, telepítésében és skálázásában konténerizált környezetben. Konténerek segítségével a Docker lehetővé teszi az alkalmazások csomagolását és futtatását izolált környezetben, ami nagyban hozzájárul a platformok közötti kompatibilitáshoz és az infrastruktúra hatékonyságának növeléséhez.

- **Miért Docker?**

- **Konzisztencia**: A Docker garantálja, hogy az alkalmazás ugyanúgy fut minden környezetben, legyen szó fejlesztői gépről vagy termelési környezetről.
- **Izoláció**: Minden konténer izoláltan működik, így a szoftverek kölcsönös zavarása nélkül futtathatók.
- **Biztonság**: Az izoláció révén a Docker javítja az alkalmazások biztonságát, mivel a konténerek korlátozzák a hozzáférést és erőforrás-használatot.
- **Skálázhatóság és menedzsment**: A Docker lehetővé teszi az alkalmazások könnyű skálázását és kezelését, ami ideálissá teszi őket mikroszolgáltatások architektúrájában.
- **Konzisztencia**: A Docker garantálja, hogy az alkalmazás ugyanúgy fut minden környezetben, legyen szó fejlesztői gépről vagy termelési környezetről.
- **Izoláció**: Minden konténer izoláltan működik, így a szoftverek kölcsönös zavarása nélkül futtathatók.
- **Biztonság**: Az izoláció révén a Docker javítja az alkalmazások biztonságát, mivel a konténerek korlátozzák a hozzáférést és erőforrás-használatot.
- **Skálázhatóság és menedzsment**: A Docker lehetővé teszi az alkalmazások könnyű skálázását és kezelését, ami ideálissá teszi őket mikroszolgáltatások architektúrájában.

- **Alapvető fogalmak**

- **Docker képfájlok**: A Docker képek a szoftvercsomagok állóképei, amelyek tartalmazzák az alkalmazások futtatásához szükséges minden fájlt és könyvtárat.
- **Konténerek**: Az indított Docker képekből létrehozott futtatható példányok, amelyek tartalmazzák az alkalmazást és annak futtatásához szükséges környezetet.
- **Docker Hub**: A Docker saját registry-je, ahol a fejlesztők feltölthetik és letölthetik a különböző Docker képeket.
- **Docker képfájlok**: A Docker képek a szoftvercsomagok állóképei, amelyek tartalmazzák az alkalmazások futtatásához szükséges minden fájlt és könyvtárat.
- **Konténerek**: Az indított Docker képekből létrehozott futtatható példányok, amelyek tartalmazzák az alkalmazást és annak futtatásához szükséges környezetet.
- **Docker Hub**: A Docker saját registry-je, ahol a fejlesztők feltölthetik és letölthetik a különböző Docker képeket.

A Docker alapos megértése kulcsfontosságú a modern szoftverfejlesztési és telepítési folyamatokban. Reméljük, ez a rövid bevezető segít megérteni a Docker alapjait és előnyeit, ami alapozza majd a további mélyebb ismeretek elsajátítását.


## Docker Desktop telepítése

Telepítési link (Mac, Linux, Windows): https://www.docker.com/products/docker-desktop

- **Miért Docker Desktop?**

- Egyszerűen telepíthető
- Minden szükséges komponenst feltelepít
- Erőforrásszükséglet a futtató géphez szabható
- Teljes Docker funkcionalitás (images, DockerHub)
- Helyi Kubernetes (K8s) szerver
- Kiegészítők (monitorozás, egyéb cluster megoldások)
- Egyszerűen telepíthető
- Minden szükséges komponenst feltelepít
- Erőforrásszükséglet a futtató géphez szabható
- Teljes Docker funkcionalitás (images, DockerHub)
- Helyi Kubernetes (K8s) szerver
- Kiegészítők (monitorozás, egyéb cluster megoldások)

## Docker parancsok

Expand All @@ -67,7 +67,6 @@ Telepítési link (Mac, Linux, Windows): https://www.docker.com/products/docker-
- `docker ps`: Megjeleníti az aktív konténereket.
- `docker stop <konténer>`: Megállít egy futó konténert.


- Verzió:

```bash
Expand Down Expand Up @@ -116,14 +115,14 @@ docker rm {konténer azonosító}
docker rm {konténer azonosító} --force
```


- Image építése Dockerfile alapján:

```bash
docker build --tag {namespace vagy author}/{image neve}:{verzió} .
```

Megjegyzés:
Megjegyzés:

- Ha az image fájlt Apple Silicon processzoros gépen készítem, de utána Intel processzoros gépen használom, akkor a fenti parancshoz adjuk hozzá ezt: `--platform linux/amd64`
- Több platformos build: `docker buildx build --tag {kép neve címkével} --push . --platform linux/amd64,linux/arm64,linux/arm/v7`

Expand All @@ -141,7 +140,8 @@ docker inspect {konténer azonosító}
docker logs {konténer azonosító}
```

Megjegyzés:
Megjegyzés:

- Ha a naplót folyamatosan szeretnénk látni, akkor használjuk a `-f` kapcsolót: `docker logs -f {konténer azonosító}`

## Konténer indítása, leállítása
Expand Down Expand Up @@ -180,7 +180,6 @@ docker exec -it {konténer azonosító} bash
docker exec {konténer azonosító} {parancs}
```


## Képek kezelése (letöltés, címkézés)

### Docker kép letöltése
Expand Down Expand Up @@ -224,7 +223,6 @@ A `docker-compose.yml` fájlban definiálod a szükséges szolgáltatásokat, h

_Megjegyzés: `docker compose up -d` kapcsolóval a konténerek a háttérben futnak._


### Indítás építéssel

```bash
Expand Down Expand Up @@ -283,8 +281,6 @@ az acr login --name {ACR név}
az acr update -n {ACR név} --admin-enabled true
```



### Docker kép feltöltése az ACR-be

1. Bejelentkezés az ACR-be:
Expand Down Expand Up @@ -332,7 +328,6 @@ docker push {ACR név}.azurecr.io/{kép neve}:{verzió}
12. Kattintsunk a "Következő" gombra.
13. Kattintsunk a "Létrehozás" gombra.


## DevOps CI/CD pipeline alkalmazása

### GitHub Actions Workflow
Expand Down Expand Up @@ -376,7 +371,6 @@ Workflow fájlok (általában `.github/workflows` mappában található YAML fá
- Name: ACR_PASSWORD
- Secret: {az ACR password vagy password2}


### ACR használata GitHub Actions-ben

1. Clone-ozzuk le a repository-t a gépünkre.
Expand All @@ -385,15 +379,14 @@ Workflow fájlok (általában `.github/workflows` mappában található YAML fá
4. Készítsük el a megfelelő CI/CD pipeline-t a fájlban. (nem szükséges a teéjes folyamatot egy fájlban megvalósítani. Lehetséges, hogy egy nagy CI/CD folyamatot több fájlban valósítunk meg.)

Példák:

- [.github/workflows/pelda.yml](/.github/workflows/pelda.yaml)
- [.github/workflows](/.github/workflows)


## Azure Webalkalmazás létrehozása Docker képből

- Webalkalmazás létrehozásánál a Docker képet az Azure Container Registry-ből használjuk. Az Azure Webalkalmazás lehetővé teszi a konténerek gyors és egyszerű telepítését, skálázását és kezelését a felhőben.
- Webalkalmazás módosítása

1. Üzembehelyezési központban állítsuk át a `Folyamatos telepítés` értékés `Bekalcsolva`-ra.
2. Konfiguráció > Általános beállítások > Mindig bekapcsolva: Be

1. Üzembehelyezési központban állítsuk át a `Folyamatos telepítés` értékés `Bekalcsolva`-ra.
2. Konfiguráció > Általános beállítások > Mindig bekapcsolva: Be

0 comments on commit c446931

Please sign in to comment.