# 🐳 Úvod do Dockeru: Praktický průvodce pro začátečníky 👉 [[1.1.1 O projektu]] 👉 [[1.1.2 Vlastní digitální svět (přehled článků)]] Představte si, že máte možnost spustit aplikace v oddělených „krabicích“, které se navzájem neovlivňují. 🛠️ Takové „krabice“ se nazývají **kontejnery** a Docker je nástroj, který vám pomůže je snadno vytvořit a spravovat. Tento článek vás provede základy Dockeru, ukáže vám první kroky a nabídne tipy, jak řešit problémy, i když zatím nemáte zkušenosti. 🚀 ![[image_dockerstart.png]] --- ## **Co je Docker a proč ho používat?** Docker je nástroj, který umožňuje balit aplikace a všechny jejich závislosti do tzv. **kontejnerů**. Ty běží izolovaně, což přináší několik klíčových výhod: - **Izolace:** Každá aplikace běží ve svém vlastním prostředí. Žádné konflikty verzí knihoven nebo závislostí! - **Přenositelnost:** Kontejnery můžete snadno přesunout mezi počítači, servery nebo cloudy. - **Jednoduchá správa:** Aplikace spustíte, zastavíte a smažete jedním příkazem. Představte si, že pracujete na projektu a potřebujete stejnou konfiguraci na svém notebooku i na produkčním serveru. Docker vám to umožní bez složitých úprav nebo nastavování. --- ## **Jak Docker funguje: Základní architektura** Docker funguje na principu tří hlavních komponent: 1. **Image (obraz):** Šablona obsahující aplikaci a vše potřebné pro její běh. 2. **Container (kontejner):** Běžící instance obrazu. 3. **Registry:** Místo, kde jsou obrazy uloženy (např. [Docker Hub](https://hub.docker.com/)). 🛠️ **Praktické přirovnání:** Docker image je jako recept na dort, který obsahuje všechny ingredience. Kontejner je ten dort, který upečete podle receptu. A registry je kuchařka, kde najdete spoustu dalších receptů! --- ## **Instalace Dockeru: Začněte krok za krokem** 1. **Stáhněte si Docker Desktop:** - [Pro Windows](https://www.docker.com/products/docker-desktop/) - [Pro macOS](https://www.docker.com/products/docker-desktop/) - [Pro Linux](https://docs.docker.com/engine/install/) 2. **Nainstalujte a spusťte první příkaz:** ```bash docker run hello-world ``` Tento příkaz stáhne obraz „hello-world“ z Docker Hubu, spustí ho jako kontejner a ukáže vám, že Docker funguje. 3. **Prozkoumejte základní příkazy:** - **`docker pull`**: Stáhne obraz z registry. - **`docker run`**: Spustí nový kontejner. - **`docker ps`**: Ukáže běžící kontejnery. - **`docker stop`**: Zastaví kontejner. --- ## **Co je `.yml` a proč je důležitý?** Docker Compose používá `.yml` soubory k definování služeb, sítí a svazků. `.yml` je jednoduchý formát pro zápis strukturovaných dat, který vyžaduje přesnou práci s odsazením. Příklad jednoduchého `docker-compose.yml`: ```yaml version: '3' services: web: image: nginx ports: - "8080:80" ``` 💡 **Tip:** Používejte editor jako [VS Code](https://code.visualstudio.com/), který nabízí: - Automatické zvýraznění syntaxe. - Kontrolu chyb v `.yml`. - Rozšíření pro Docker a YAML, která vám práci výrazně usnadní. --- ## **První projekt: Vytvořte jednoduchý webový server** Vyzkoušejte si jednoduchý příklad s webovým serverem **nginx**: ```bash docker run -d -p 8080:80 nginx ``` Otevřete prohlížeč a zadejte `http://localhost:8080`. Uvidíte výchozí stránku serveru nginx. --- ## **Docker Compose: Proč a jak ho použít?** Docker Compose je nástroj, který umožňuje spouštět více kontejnerů najednou pomocí jednoho souboru. Příklad: ```yaml version: '3' services: web: image: nginx ports: - "8080:80" db: image: postgres ``` Spuštění: ```bash docker-compose up ``` Tímto příkazem spustíte webový server i databázi najednou. --- ## **Řešení problémů a ladění pomocí AI nástrojů** Docker logy jsou užitečné, ale někdy těžko srozumitelné. Jak může AI pomoci? - **Problém s kontejnerem:** Zkopírujte chybu z logů (`docker logs [container_id]`) a vložte ji do ChatGPT nebo jiného AI nástroje. - **Konfigurace Docker Compose:** Pokud se objeví chyba v souboru `docker-compose.yml`, AI vám pomůže ji najít a opravit. Příklad: 1. Zkopírujte část logu nebo chybu. 2. Zeptejte se: „Co tato chyba znamená a jak ji opravit?“ 3. Získejte podrobné vysvětlení a návod. **Pozor na bezhlavé kopírování, vždy je potřeba mít alespoň základní povědomí co děláme, abychom si prostředí kompletně nerozbili, to samozřejmě platí dvojnásobně pokud jsme ve vlastní produkci.** --- ## **Co dál? Prozkoumejte možnosti Dockeru** Jakmile zvládnete základy, můžete se podívat na další témata: - [Traefik](https://doc.traefik.io/traefik/): Reverzní proxy pro správu více domén. - [Portainer](https://www.portainer.io/): Správa Docker kontejnerů pomocí přehledného grafického - Vlastní Docker obrazy: Jak vytvořit image pomocí `Dockerfile`. - [Kubernetes](https://kubernetes.io/): Pokročilá orchestrace více kontejnerů (pro velké projekty). Pro podrobnosti si projděte [oficiální dokumentaci Dockeru](https://docs.docker.com/). --- ## **Závěr** Docker je skvělý nástroj, který vám usnadní práci s aplikacemi a jejich správu. Tento článek vás provedl prvními kroky, ale to je jen začátek. 🚀 👉 Jaké projekty plánujete s Dockerem? Podělte se o své zkušenosti v komentářích ([Mastodon](https://mastodonczech.cz/@TomasHaubert/113896693024179650), [Linkedin](https://www.linkedin.com/posts/tomas-haubert_uvod-do-dockeru-tom%C3%A1%C5%A1-haubert-activity-7290655006892978176-lbAW?utm_source=share&utm_medium=member_ios)). ### ⏪ Související články ⏩ > **🔙 Předchozí článek:** > [[2025-01-27 Výběr typu instalace pro váš digitální svět|Předchozí (výběr typu instalace)]] > > **🔜 Následující článek:** > [[2025-02-03 Portainer (Jak jednoduše spravovat Docker kontejnery přes webové rozhraní)|Portainer (správa Docker kontejnerů)]] #osobniDigitalizace #digilifehub #docker