.
- 1 1. Úvod
- 2 2. Instalace Dockeru na Ubuntu
- 3 3. Základní operace s Docker obrazy
- 4 4. Vytváření vlastních obrázků s Dockerfile
- 5 5. Nastavení japonského prostředí v kontejnerech Ubuntu
- 6 6. Optimalizace a minimalizace Docker obrázků
- 7 7. Praktický příklad: vývoj aplikací v Ubuntu kontejnerech
- 8 8. Často kladené otázky a řešení problémů
1. Úvod
Co je Docker?
Docker je platforma, která využívá virtualizační technologii založenou na kontejnerech k efektivnímu vývoji, distribuci a spouštění aplikací. Na rozdíl od tradičních virtuálních strojů (VM) kontejnery sdílejí jádro hostitelského OS, což umožňuje rychlejší start a nižší spotřebu zdrojů.
Výhody používání Dockeru na Ubuntu
Ubuntu je jednou z linuxových distribucí s vysokou kompatibilitou s Dockerem. Hlavní důvody zahrnují:
- Oficiální podpora : Docker oficiálně podporuje Ubuntu, což umožňuje snadnou instalaci přes oficiální repozitář.
- Stabilní správa balíčků : Správce balíčků APT v Ubuntu usnadňuje správu verzí.
- Rozsáhlá komunita : Ubuntu má velkou globální uživatelskou základnu, takže řešení problémů je jednodušší, když nastanou potíže.
Co se v tomto článku naučíte
Tento průvodce krok za krokem vysvětluje následující témata:
- Jak nainstalovat Docker na Ubuntu
- Základní operace s Docker obrazy
- Vytváření vlastních obrazů pomocí Dockerfile
- Nastavení japonské locale v kontejneru Ubuntu
- Optimalizace a minimalizace Docker obrazů
- Vývoj aplikací uvnitř kontejnerů Ubuntu
- Běžné chyby a jejich řešení
Obsah je užitečný jak pro začátečníky, tak pro pokročilé uživatele, takže jej můžete libovolně využívat v jakémkoli stádiu.
2. Instalace Dockeru na Ubuntu
Instalace Dockeru pomocí oficiálního repozitáře
V Ubuntu můžete Docker snadno nainstalovat pomocí oficiálního repozitáře. Postupujte podle níže uvedených kroků a připravte si prostředí.
1. Odstranění existujících Docker balíčků
Ubuntu může obsahovat balíček nazvaný docker.io, který může být starší verze. Před instalací nejnovějšího Dockeru jej odstraňte.
sudo apt remove docker docker-engine docker.io containerd runc
2. Instalace požadovaných balíčků
Nejprve nainstalujte závislé balíčky.
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
3. Přidání oficiálního Docker repozitáře
Přidejte oficiální GPG klíč Dockeru a nakonfigurujte repozitář.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4. Instalace Dockeru
Po přidání repozitáře nainstalujte Docker.
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
5. Ověření instalace
Zkontrolujte, zda je Docker nainstalován správně, a zobrazte informace o verzi.
docker --version
Počáteční nastavení po instalaci
1. Spuštění a povolení služby Docker
Spusťte službu Docker a povolte automatické spouštění při startu systému.
sudo systemctl start docker
sudo systemctl enable docker
2. Povolení ne‑root uživatelům spouštět Docker
Ve výchozím nastavení Docker může spouštět jen root. Umožněte běžným uživatelům spouštět Docker příkazy.
sudo usermod -aG docker $USER
Odhlaste se a znovu se přihlaste, aby se změny projevily.
3. Otestování fungování Dockeru
Spusťte kontejner hello-world pod běžným uživatelským účtem.
docker run hello-world
Pokud výstup obsahuje „Hello from Docker!“, instalace proběhla úspěšně.

3. Základní operace s Docker obrazy
Co je Docker obraz?
Docker obraz funguje jako šablona pro vytváření kontejnerů. Pomocí obrazu Docker založeného na Ubuntu můžete rychle spustit Ubuntu prostředí.
Stahování Ubuntu obrazů z Docker Hub
Docker Hub poskytuje řadu oficiálních Docker obrazů. Pro stažení Ubuntu obrazu spusťte:
docker pull ubuntu
Spouštění a zastavování kontejnerů
Použijte stažený Ubuntu obraz k spuštění kontejneru:
docker run -it ubuntu bash
Toto otevře shell uvnitř kontejneru Ubuntu, což vám umožní v něm pracovat.
Seznam kontejnerů
Zobrazit spuštěné kontejnery:
docker ps
Zobrazit všechny kontejnery, včetně zastavených:
docker ps -a
Zastavení a odstranění kontejnerů
Zastavit spuštěný kontejner:
docker stop [container ID or name]
Odstranit nepotřebný kontejner:
docker rm [container ID or name]
Správa Docker obrázků
Vypsat stažené Docker obrázky:
docker images
Odstranit obrázek:
docker rmi [image ID]
4. Vytváření vlastních obrázků s Dockerfile
Co je Dockerfile?
Dockerfile je konfigurační soubor používaný k sestavení Docker obrázků. Na základě instrukcí zapsaných v Dockerfile můžete vytvořit přizpůsobené Docker obrázky. To vám umožňuje sjednotit vývojová prostředí nebo vytvořit obrázky, které obsahují požadované balíčky.
Základní syntaxe Dockerfile
Dockerfile obvykle obsahuje následující příkazy:
| Command | Description |
|---|---|
FROM | Specifies the base image |
RUN | Executes commands to build the image |
COPY | Copies files into the container |
WORKDIR | Sets the working directory |
CMD | Default command executed when the container starts |
ENTRYPOINT | Defines the entry point of the container |
Vytvoření vlastního obrázku na bázi Ubuntu
Postupujte podle následujících kroků k vytvoření vlastního Docker obrázku na bázi Ubuntu.
1. Vytvoření pracovního adresáře
Nejprve vytvořte nový adresář projektu a přesuňte se do něj.
mkdir my-ubuntu-image
cd my-ubuntu-image
2. Vytvoření Dockerfile
Vytvořte soubor Dockerfile uvnitř adresáře a zapište do něj následující obsah:
# Base Ubuntu official image
FROM ubuntu:latest
# Maintainer information (optional)
LABEL maintainer="your-email@example.com"
# Update package list and install basic tools
RUN apt update && apt install -y curl vim git
# Set working directory
WORKDIR /workspace
# Default command when the container starts
CMD ["bash"]
3. Sestavení Docker obrázku
Sestavte vlastní obrázek z vašeho Dockerfile:
docker build -t my-ubuntu-image .
Možnost -t přiřadí název obrázku.
4. Ověření obrázku
Zkontrolujte nově sestavený obrázek:
docker images
5. Spuštění kontejneru
Spusťte kontejner z vlastního obrázku:
docker run -it my-ubuntu-image
Tento obrázek obsahuje nástroje jako curl a vim.
5. Nastavení japonského prostředí v kontejnerech Ubuntu
Výchozí obrázek Ubuntu používá anglické prostředí. Pro použití japonštiny je vyžadována další konfigurace.
Nastavení japonské lokalizace
Chcete-li povolit japonské zobrazení a vstup v kontejneru Ubuntu, nainstalujte japonskou lokalizaci.
1. Instalace požadovaných balíčků
apt update
apt install -y language-pack-ja locales
2. Konfigurace lokalizace
Vygenerujte a aplikujte lokalizaci:
locale-gen ja_JP.UTF-8
update-locale LANG=ja_JP.UTF-8
3. Aplikování nastavení
export LANG=ja_JP.UTF-8
Nastavení japonského vstupu
Pro zadávání japonských znaků v terminálu nainstalujte ibus-mozc:
apt install -y ibus-mozc
Pokud používáte GUI aplikace, přidejte následující proměnné prostředí:
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
Používání GUI aplikací
Pro spuštění GUI aplikací uvnitř Docker kontejneru použijte X server na hostitelské mašině.
Spusťte kontejner s povoleným X11:
docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix my-ubuntu-image
6. Optimalizace a minimalizace Docker obrázků
Docker obrázky lze optimalizovat pro zlepšení rychlosti spuštění kontejneru a snížení spotřeby úložiště. Zde jsou několik technik pro vytváření lehkých obrázků.
Jak vytvořit lehký obrázek na bázi Ubuntu
Výchozí obrázek ubuntu:latest je relativně velký. Použití lehčí varianty jako ubuntu:minimal pomůže snížit velikost kontejneru.
FROM ubuntu:minimal
Další možností je použít Alpine Linux, který je výrazně menší než Ubuntu.
FROM alpine:latest
RUN apk add --no-cache bash curl
Použití Alpine může snížit velikost obrázku o několik set megabajtů.
Snížení velikosti obrázku odstraněním nepotřebných souborů
Velikost obrazu můžete snížit odstraněním nepotřebných souborů mezipaměti vytvořených příkazem apt-get.
RUN apt update && apt install -y curl vim \
&& apt clean \
&& rm -rf /var/lib/apt/lists/*
Konkrétně příkaz rm -rf /var/lib/apt/lists/* odstraňuje seznamy balíčků a nepoužívaná data.
Použití Multi‑Stage Buildů
Multi‑stage buildy vám umožňují používat nástroje pouze během procesu sestavení, přičemž finální obraz zůstává odlehčený.
FROM ubuntu as builder
RUN apt update && apt install -y gcc
FROM ubuntu:minimal
COPY --from=builder /usr/bin/gcc /usr/bin/gcc
Tím se vyhnete zahrnutí vývojových nástrojů do finálního obrazu, což vede k mnohem menší stopě.
7. Praktický příklad: vývoj aplikací v Ubuntu kontejnerech
Tato sekce představuje, jak nastavit vývojová prostředí uvnitř Ubuntu kontejnerů.
Nastavení vývojového prostředí pro Python
Vytvořte následující Dockerfile pro nastavení vývojového prostředí pro Python v Ubuntu kontejneru:
FROM ubuntu:latest
RUN apt update && apt install -y python3 python3-pip
CMD ["python3"]
Sestavte obraz a spusťte kontejner:
docker build -t python-dev .
docker run -it python-dev
Toto prostředí vám umožní používat příkaz python3 pro vývoj a testování skriptů.
Nastavení vývojového prostředí pro Node.js
Pro nastavení vývojového prostředí pro Node.js použijte následující Dockerfile:
FROM ubuntu:latest
RUN apt update && apt install -y nodejs npm
CMD ["node"]
Sestavte a spusťte kontejner:
docker build -t node-dev .
docker run -it node-dev
Toto prostředí umožňuje spouštění JavaScriptu a vývoj aplikací pomocí příkazu node.
8. Často kladené otázky a řešení problémů
Používání Dockeru může vést k různým problémům. Níže jsou běžné otázky a typická řešení.
Rozdíl mezi Dockerem a virtuálními stroji
- Docker: Sdílí jádro hostitelského OS, což jej činí odlehčeným s rychlým startem kontejneru.
- Virtuální stroje (VM): Každý VM obsahuje vlastní OS, což vede k vyšší spotřebě zdrojů a pomalejšímu startu.
Docker vyniká v optimalizaci zdrojů a hodí se pro vývojová prostředí a automatizované nasazení.
Zachování dat v Ubuntu kontejnerech
Pro zachování dat i po zastavení kontejneru použijte volume mounts:
docker run -v my_data:/data ubuntu
I když je kontejner smazán, data uložená ve svazku my_data lze znovu použít.
Časté chyby a řešení
1. Chyba permission denied
Pokud při pokusu spustit Docker vidíte permission denied, může váš uživatel nepatřit do skupiny docker.
Přidejte uživatele do skupiny Docker:
sudo usermod -aG docker $USER
Odhlaste se a znovu přihlaste, aby se změna projevila.
2. Chyba image not found
Pokud byl obraz odstraněn z Docker Hubu, při stahování uveďte novější tag:
docker pull ubuntu:22.04
Určení explicitní verze zajišťuje, že bude stažen správný obraz.


