markdown.## 1. Úvod
Když si nastavujete vývojové prostředí na Ubuntu, situace, kdy si řeknete „prozatím si jen nainstalujeme Docker“, se stávají čím dál častějšími. Webové aplikace, dávkové zpracování, testovací databáze, testovací middleware… Pokud tyto komponenty instalujete ručně pokaždé, spotřebujete obrovské množství času a úsilí jen na nastavení prostředí.
Právě zde se ukazuje, jak užitečná je technologie kontejnerové virtualizace Docker. S Dockerem můžete spravovat nejen samotnou aplikaci, ale i všechny potřebné knihovny a konfigurace společně jako „image“. Jakmile je Docker nainstalován na Ubuntu, můžete snadno:
- Spustit nové vývojové prostředí během několika minut
- Zajistit, aby všichni členové týmu mohli reprodukovat chování ve stejném prostředí
- Lokálně vytvořit nastavení podobné produkci s lehkostí
Tyto výhody můžete využívat s minimálním úsilím.
Na druhou stranu, pro ty, kteří používají Docker poprvé, existuje řada běžných úskalí:
- Nevíte, který instalační postup je skutečně správný
- Nerozumíte rozdílu mezi výchozím repozitářem Ubuntu a oficiálním repozitářem Dockeru
- Setkáváte se s chybami oprávnění kvůli nejasnostem, kdy použít
sudo
Když hledáte „ubuntu install docker“, najdete spoustu článků s dlouhými sekvencemi příkazů, ale často selhávají v tom, že vysvětlí proč jsou tyto kroky nutné nebo co označuje kompletní instalaci.
- 1 2. Předpoklady a příprava
- 2 3. Installing Docker
- 3 4. Uživatelská oprávnění a spuštění Dockeru bez sudo
- 4 5. Ověření spuštění a provozu
- 5 6. Instalace a používání Docker Compose
- 6 7. Bezpečnostní a provozní úvahy
- 6.1 7-1. Skupina docker má „prakticky root“ oprávnění
- 6.2 ● Klíčové body, na které je třeba si dát pozor
- 6.3 7-2. Zvažování rootless Dockeru (pokročilá volba)
- 6.4 7-3. Čištění nepoužívaných obrazů a kontejnerů
- 6.5 7-4. Vyhněte se používání značky „latest“ v produkci
- 6.6 7-5. Používejte oficiální základní obrazy v Dockerfiles
- 6.7 7-6. Buďte opatrní při vystavování sítí a portů
- 6.8 7-7. Správa logů při selháních
- 7 8. Časté problémy a řešení
1-1. Cíl tohoto článku
Tento článek je určen čtenářům, kteří chtějí nainstalovat Docker na Ubuntu, a pokrývá následující klíčové body:
- Aktuálně běžný postup instalace Dockeru na Ubuntu
- Snadněji spravovatelný instalační způsob pomocí oficiálního repozitáře
- Jak spouštět příkaz
dockerbezsudo - Ověření po instalaci a základní nezbytné příkazy
- Úvod k běžně používaným nástrojům, jako je Docker Compose
Namísto pouhého výpisu příkazů tento průvodce vysvětluje proč je každý krok nutný, což vám pomůže v budoucnu snadněji udržovat prostředí.
1-2. Cílové publikum a předpoklady
Tento článek je určen čtenářům, kteří:
- Rozumí základním operacím v Ubuntu (otevírání terminálu, používání příkazu
aptatd.) - Jsou vývojáři nebo začínající inženýři, kteří Docker zkouší poprvé
- Zvažují migraci stávajících testovacích prostředí do kontejnerů
Pokročilé znalosti správy Linuxu nejsou vyžadovány. Pokud vám nevadí psát příkazy v terminálu, tento průvodce by měl stačit.
1-3. Struktura článku a jak jej číst
Článek postupuje v následujícím pořadí:
- Kontrola předpokladů
- Instalační metody (oficiální repozitář / skriptový)
- Nastavení oprávnění a ověření
- Instalace Docker Compose
- Řešení problémů a další kroky
Můžete si článek přečíst od začátku do konce, nebo pokud je Docker již nainstalován, můžete se soustředit jen na sekce „Oprávnění“ nebo „Compose“.
2. Předpoklady a příprava
Instalace samotného Dockeru je relativně jednoduchá, ale v závislosti na verzi Ubuntu nebo existujícím prostředí je několik bodů, které stojí za to předem zkontrolovat. Tato sekce shrnuje předpoklady a přípravy potřebné pro hladkou instalaci.
2-1. Podporované verze Ubuntu
Docker funguje na mnoha verzích Ubuntu, ale následující LTS vydání jsou nejčastěji používána:
- Ubuntu 22.04 LTS (doporučeno)
- Ubuntu 20.04 LTS
- Ubuntu 24.04 LTS (nejnovější)
LTS (Long Term Support) vydání poskytují dlouhodobou stabilitu, což je ideální pro udržování vývojových prostředí založených na Dockeru.
Vydání mimo LTS (např. 23.10) lze také použít, ale LTS verze jsou obecně preferovány v profesionálním prostředí.
2-2. Předinstalované Docker balíčky
.Ubuntu’s default repository includes a package called docker.io. However, this is not the official Docker package provided by Docker Inc., and updates tend to lag behind. Therefore, installing Docker from the official repository is strongly recommended.
First, check and remove any existing Docker-related packages if necessary:
sudo apt remove docker docker.io containerd runc
If the message indicates that nothing is installed, no action is required.
2-3. Updating APT and Installing Required Packages
Before adding Docker’s official repository, update APT and install required tools:
sudo apt update
sudo apt install -y ca-certificates curl gnupg
These tools are required to add Docker’s GPG key and repository securely.
2-4. Verifying Administrator Privileges (sudo)
Docker installation requires sudo privileges. If your account does not have sudo access, switch to an administrator account or request permission.
You can verify sudo access with the following command:
sudo -v
If you are prompted for a password and the command succeeds, you are ready to proceed.
2-5. Checking Network Connectivity
Installing Docker requires access to external repositories, so an active internet connection is mandatory. In corporate or proxy environments, GPG key retrieval may fail due to access restrictions.
In such cases, consult your network administrator regarding proxy settings or allowlist configurations.
2-6. Choosing the Installation Method
There are three main ways to install Docker:
- Install via the official Docker repository (Recommended)
- Use the
get.docker.cominstallation script (Quick and easy) - Manually download and install Docker .deb packages (Special cases)
This article focuses primarily on the official repository method, which is the most common and easiest to maintain.
3. Installing Docker
Now let’s install Docker on Ubuntu. Although multiple installation methods exist, this guide focuses on the official Docker repository method, which is the most reliable and widely used in production environments.
This method allows stable upgrades via apt upgrade, making it ideal for long-term use.
3-1. Adding the Official Docker Repository (Recommended)
First, register the official GPG key provided by Docker and add Docker’s repository to APT.
Once this is configured correctly, you can avoid accidentally installing the outdated docker.io package from Ubuntu’s default repository.
3-1-1. Registering the GPG Key
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
/etc/apt/keyrings/is the recommended key storage location for Ubuntu 22.04 and later--dearmorconverts the key into binary format
This step allows APT to trust the official Docker repository.
3-1-2. Adding the Repository
Next, add Docker’s repository to APT’s source list.
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo $VERSION_CODENAME) stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Key points:
$(. /etc/os-release && echo $VERSION_CODENAME)automatically inserts the correct Ubuntu codename (such asjammyorfocal)- Only the stable repository is added
3-1-3. Updating Repository Information
After adding the repository, update the APT index.
sudo apt update
At this point, docker-ce (Docker Engine) should appear as an installable package.
3-2. Installing Docker Engine
Now install the main Docker packages.
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Package roles:
. docker-ce : jádro Docker Engine
docker-ce-cli : rozhraní příkazové řádky Dockeru
containerd.io : hlavní runtime kontejnerů používaný Dockerem
docker-buildx-plugin : pokročilé funkce pro sestavování, např. multi‑platformní buildy
docker-compose-plugin* : Docker Compose V2 (příkaz docker compose)
Po instalaci se Docker daemon spustí automaticky.
3-3. Ověření instalace
Zkontrolujte stav Dockeru pomocí následujícího příkazu:
sudo systemctl status docker
Pokud vidíte active (running), Docker funguje správně.
Stiskněte q pro ukončení zobrazení stavu.
3-4. Volitelné: instalace pomocí skriptu pro pohodlí
Docker také poskytuje jednorázový instalační skript.
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
Výhody:
- Méně příkazů a rychlé nastavení
- Ideální pro jednoduchá nebo dočasná prostředí
Nevýhody:
- Obtížná správa verzí
- Často nedoporučováno pro produkční nebo dlouhodobé použití
Ačkoliv je to pohodlné pro začátečníky, tento článek upřednostňuje udržovatelnost a proto se zaměřuje na metodu s oficiálním repozitářem.
3-5. Poznámky k nejnovějším verzím Ubuntu (např. 24.04)
Bezprostředně po hlavním vydání Ubuntu nemusí oficiální repozitář Dockeru ještě plně podporovat novou verzi.
V takových případech ověřte následující:
- že umístění a formát GPG klíče odpovídají aktuálním specifikacím
- že
VERSION_CODENAMEje oficiálně podporován - že během
apt updatenedochází k chybám podpisu
Pokud je podpora zpožděná, dočasné použití skriptu get.docker.com může být praktickým řešením.
4. Uživatelská oprávnění a spuštění Dockeru bez sudo
Po instalaci Dockeru můžete chtít okamžitě začít používat příkaz docker. Ve výchozím nastavení musíte před každý příkaz přidat sudo.
Toto chování je záměrné z bezpečnostních důvodů, ale je nepohodlné pro každodenní vývoj nebo učení. Pro vyřešení můžete přidat svého uživatele do skupiny docker, což umožní spouštět Docker příkazy bez sudo.
4-1. Proč je důležité spouštět bez sudo
Na Ubuntu daemon Dockeru (dockerd) běží s právy roota.
Proto vytváření nebo odstraňování kontejnerů pomocí příkazu docker normálně vyžaduje přístup roota.
Skupina docker existuje právě pro řešení této potřeby.
- Uživatelé v této skupině mohou přímo přistupovat k Docker daemonu
- To umožňuje příkazy jako
docker runbezsudo - Toto nastavení je téměř nezbytné pro vývojové použití
Všimněte si, že skupina docker v podstatě poskytuje oprávnění blízká rootu, takže v sdílených prostředích je třeba opatrnosti.
(Pro osobní desktopy nebo WSL2 to obvykle není problém.)
4-2. Přidání uživatele do skupiny docker
Přidejte aktuálně přihlášeného uživatele do skupiny docker:
sudo usermod -aG docker $USER
Tento příkaz přidá uživatele do skupiny. Volba -aG znamená přidat do skupiny.
4-3. Aplikace změn
Změny členství ve skupině se projeví po odhlášení a opětovném přihlášení.
Pro okamžité použití změny můžete také spustit:
newgrp docker
Tím se spustí nová relace shellu s oprávněními skupiny docker.
4-4. Ověření běhu bez sudo
Nyní vyzkoušejte Docker bez sudo:
docker run hello-world
Úspěšný výstup:
- Hello from Docker!
- Image byla stažena a zpráva se zobrazila
Pokud nastane chyba, zkontrolujte následující:
- Odhlásili jste se a znovu přihlásili po změně členství ve skupině?
- Používá se
/usr/bin/docker? - Běží Docker daemon (
systemctl status docker)?
4-5. Bezpečnostní úvahy (Důležité)
Skupina docker poskytuje mocná oprávnění, která jsou v podstatě ekvivalentní přístupu roota.
- Čtení libovolných souborů
- Připojování adresářů hostitele do kontejnerů
- Provádění síťových operací
- Řízení systému přes Docker socket
.Toto je přijatelné pro osobní systémy, ale správa uživatelů je kritická na sdílených serverech.
V takových případech můžete zvážit rootless Docker, který je probírán v pozdějších částech.
5. Ověření spuštění a provozu
Jakmile je instalace Dockeru a konfigurace oprávnění dokončena, dalším krokem je ověřit, že Docker funguje správně.
Tato část vysvětluje, jak zkontrolovat stav služby Docker a skutečně spustit kontejnery.
5-1. Kontrola stavu Docker daemonu
Nejprve ověřte, že Docker běží správně na pozadí.
sudo systemctl status docker
Klíčové indikátory stavu:
- active (running) → Provozuje se normálně
- inactive → Neběží (musí být spuštěn ručně)
- failed → Chyba konfigurace nebo závislosti
Pokud je stav inactive nebo failed, spusťte Docker následujícím příkazem:
sudo systemctl start docker
Aby Docker startoval automaticky při bootování OS:
sudo systemctl enable docker
5-2. Ověření provozu pomocí kontejneru hello-world
Nejčastější způsob, jak ověřit instalaci Dockeru, je spuštění oficiálního obrazu hello-world.
docker run hello-world
Tento příkaz provede následující kroky:
- Stáhne obraz z Docker Hubu, pokud není lokálně dostupný
- Spustí kontejner z tohoto obrazu
- Zobrazí testovací zprávu a ukončí se
Pokud je úspěšné, uvidíte výstup podobný následujícímu:
Hello from Docker!
This message shows that your installation appears to be working correctly.
Pokud se tato zpráva objeví, Docker je nainstalován a funguje správně.
5-3. Vyzkoušení základních Docker příkazů
Jakmile je základní provoz potvrzen, vyzkoušejte některé často používané Docker příkazy.
5-3-1. Výpis Docker obrazů
docker images
Zobrazí seznam obrazů stažených lokálně. Pokud se v seznamu objeví hello-world, vše funguje podle očekávání.
5-3-2. Kontrola běžících kontejnerů
docker ps
Tento příkaz vypíše aktuálně běžící kontejnery.
(Kontejner hello-world se okamžitě ukončí a obvykle se nezobrazí.)
Pro zobrazení i zastavených kontejnerů použijte:
docker ps -a
5-3-3. Příklad spuštění oficiálního obrazu
Vyzkoušejte jednoduchý webový server Nginx:
docker run -d -p 8080:80 nginx
-d→ Spustí na pozadí-p→ Namapuje port 8080 na hostiteli na port 80 v kontejneru
Otevřete http://localhost:8080 ve svém prohlížeči a uvidíte výchozí stránku Nginx.
5-4. Zastavení a odstranění kontejnerů
Běžící kontejner můžete zastavit následujícím příkazem:
docker stop <container-id>
Pro odstranění kontejneru použijte:
docker rm <container-id>
Pro odstranění nepoužívaných obrazů:
docker rmi <image-id>
Pamatujte, že závislosti následují pořadí kontejner → obraz → svazek, takže je odstraňujte opatrně.
5-5. Časté příčiny chyb
● Chyby oprávnění
Got permission denied while trying to connect to the Docker daemon socket
→ Uživatel není přidán do skupiny docker
● Docker daemon neběží
Cannot connect to the Docker daemon at unix:///var/run/docker.sock
→ Spusťte Docker pomocí systemctl start docker
● Síťové problémy bránící stahování obrazů
→ Zkontrolujte nastavení proxy, konfiguraci DNS nebo síťová omezení
● Stále nainstalovaný balíček legacy docker.io
→ Odinstalujte jej úplně a znovu nainstalujte Docker z oficiálního repozitáře
6. Instalace a používání Docker Compose
Jedním z nezbytných nástrojů pro práci s Dockerem ve velkém měřítku je Docker Compose.
Moderní webové aplikace často sestávají z více komponent, jako jsou databáze, cache, pracovní procesy a webové servery. Spravovat je jednotlivě pomocí příkazů docker run se rychle stává nepraktickým.
Docker Compose vám umožní definovat konfigurace více kontejnerů v jediném souboru a spravovat je společně, což z něj činí jeden z nejčastěji používaných nástrojů ve skutečném vývoji.
.
6-1. Ověření instalace Docker Compose V2
Při instalaci Dockeru z oficiálního repozitáře je Docker Compose automaticky nainstalován jako plugin.
Ověřte instalaci následujícím příkazem:
docker compose version
Pokud je instalace úspěšná, měli byste vidět výstup podobný tomuto:
Docker Compose version v2.x.x
Pokud se zobrazí chyba, například docker: 'compose' is not a docker command, nainstalujte plugin ručně:
sudo apt install docker-compose-plugin
6-2. Výhody Docker Compose
Klíčové výhody Docker Compose zahrnují:
- Jednotná správa více kontejnerů (spuštění, zastavení, restart)
- Konfigurace jako kód, zajišťující reprodukovatelné prostředí
- Snadné sdílení nastavení aplikací, API a databází
- Spouštění vývojových prostředí jedním příkazem
docker compose up
To činí Docker Compose téměř nepostradatelným pro vývoj aplikací.
6-3. Základní struktura konfiguračního souboru Compose
Docker Compose používá soubor pojmenovaný docker-compose.yml (nebo compose.yaml) k definování služeb.
Jako minimální příklad vytvořte jednoduchou konfiguraci, která spustí Nginx.
services:
web:
image: nginx:latest
ports:
- "8080:80"
Spusťte následující příkaz v adresáři, který obsahuje soubor:
docker compose up -d
Nginx se spustí na pozadí. Otevřete v prohlížeči http://localhost:8080 a ověřte to.
6-4. Příklad: Vícekontejnerové nastavení (Web + Databáze)
Skutečná síla Compose se projeví při správě více kontejnerů současně.
Například spuštění webové aplikace společně s MySQL lze nakonfigurovat následovně:
services:
app:
build: .
ports:
- "3000:3000"
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- db-data:/var/lib/mysql
volumes:
db-data:
Vysvětlení:
depends_onzajišťuje, že databáze se spustí před aplikacívolumesuchovává data databáze- Více služeb je spravováno v jediném YAML souboru
Jedná se o vysoce praktický vzor pro vývojová prostředí.
6-5. Často používané příkazy Docker Compose
Tyto příkazy je užitečné si zapamatovat:
| Command | Description |
|---|---|
docker compose up -d | Start containers in the background |
docker compose down | Stop and remove containers and networks |
docker compose build | Build images using Dockerfile |
docker compose ps | List containers managed by Compose |
docker compose logs -f | View logs (optionally per service) |
Používání Compose vám umožní opakovaně vytvářet identická prostředí, což je ideální pro týmový vývoj.
6-6. Doporučené případy použití Compose ve vývoji
- Jedno‑příkazové nastavení lokálního prostředí
- Testování v prostředích blízkých produkci
- Spouštění kombinovaných služeb, jako jsou databáze, cache a fronty zpráv
- Uchovávání dat pomocí svazků
- Správa konfigurace pomocí proměnných prostředí v souboru
.env - Podpora složitých architektur mikroservis
Jakmile budete mít Docker a Compose pod kontrolou, čas potřebný k nastavení prostředí se dramaticky zkrátí, což výrazně zvyšuje efektivitu vývoje.
7. Bezpečnostní a provozní úvahy
Docker je mimořádně výkonný a pohodlný nástroj, ale „být kontejnerizován“ automaticky neznamená „být bezpečný“.
Při pravidelném používání Dockeru na Ubuntu je důležité pochopit několik zásadních bezpečnostních a provozních bodů.
Tato sekce uspořádává nezbytné znalosti pro bezpečný a stabilní provoz Dockeru tak, aby je i začátečníci snadno pochopili.
7-1. Skupina docker má „prakticky root“ oprávnění
Skupina docker, kterou jste nastavili dříve, ve skutečnosti poskytuje velmi silná oprávnění.
Uživatelé patřící do skupiny docker mohou ovládat hostitelský OS přes Docker socket, což je v podstatě ekvivalentní přístupu na úrovni root.
● Klíčové body, na které je třeba si dát pozor
- Nepřidávejte libovolné uživatele do skupiny docker na sdílených serverech
- Pochopte důsledky, ne jen pohodlí „není potřeba sudo“
- V organizacích s přísnými bezpečnostními politikami může být vyžadováno schválení administrátorem
.Toto je na osobních strojích s Ubuntu nebo vývojových PC zřídka problém, ale na produkčních serverech je vyžadováno opatrné posouzení.
7-2. Zvažování rootless Dockeru (pokročilá volba)
Docker poskytuje funkci nazvanou rootless mode,
která umožňuje běh Docker daemonu pod běžným uživatelským účtem místo rootu.
Výhody:
- Výrazně snižuje riziko zneužití oprávnění hostitelského OS
- Umožňuje bezpečnější používání Dockeru v prostředích s přísnými bezpečnostními požadavky
Nevýhody:
- Některé síťové funkce jsou omezené
- Konfigurace je pro začátečníky složitější
- Chování se může lišit od standardního Dockeru
Rootless mode není nutný pro většinu vývojových scénářů,
ale může být životaschopnou volbou v podnicích nebo v prostředích zaměřených na soulad s předpisy.
7-3. Čištění nepoužívaných obrazů a kontejnerů
Postupem času může Docker spotřebovat velké množství místa na disku, aniž byste si toho všimli.
Nevyužívané kontejnery, obrazy a svazky se mohou hromadit a snadno překročit 100 GB.

● Příkazy pro odstraňování nepoužívaných zdrojů
Odstraňování nepoužívaných obrazů
docker image prune
Odstraňování kontejnerů a sítí najednou
docker system prune
Agresivní úklid (používejte opatrně)
docker system prune -a
Volba -a odstraňuje všechny nepoužívané obrazy, proto ji používejte obezřetně.
7-4. Vyhněte se používání značky „latest“ v produkci
Zatímco značky jako nginx:latest jsou během vývoje pohodlné, nedoporučuje se je používat v produkci.
Důvody:
- Přesná verze za
latestnení zaručena - Neočekávané aktualizace mohou způsobit selhání za běhu
- Ztráta reprodukovatelnosti vede k nestabilním nasazením
Doporučený přístup: explicitně připínat verze
Příklad:
image: nginx:1.25
Explicitní verzování je základním pravidlem pro produkční prostředí.
7-5. Používejte oficiální základní obrazy v Dockerfiles
Při tvorbě Dockerfile dodržujte následující zásady:
- Upřednostňujte oficiální obrazy (knihovní obrazy)
- Vyhýbejte se obrazům udržovaným neznámými nebo nedůvěryhodnými autory
- Při použití lehkých OS obrazů, jako je Alpine, zkontrolujte stav podpory zranitelností
Nedůvěryhodné obrazy mohou obsahovat malware.
I ve vývojových prostředích se jim vyhýbejte, kdykoli je to možné.
7-6. Buďte opatrní při vystavování sítí a portů
Když kontejnery vystavují porty na hostitelském OS,
mohou se stát přístupnými zvenčí systému.
Opatření:
- Vyhněte se zbytečným mapování
-p 80:80 - Pro lokální použití svazujte pouze na localhost, např.
-p 127.0.0.1:8080:80 - Kombinujte s nastavením firewallu, jako je UFW
- Pro produkci použijte reverzní proxy (např. Nginx) pro vyšší bezpečnost
Správa portů je zvláště kritická na VPS nebo cloudových serverech s Ubuntu.
7-7. Správa logů při selháních
Logy Dockeru lze zobrazit následujícím příkazem:
docker logs <container-name>
Velké objemy logů mohou rychle spotřebovat místo na disku,
proto zvažte konfiguraci log driverů a rotace logů.
8. Časté problémy a řešení
Ačkoliv je Docker výkonný nástroj, na Ubuntu se mohou objevit neočekávané chyby kvůli rozdílům v prostředí nebo chybám v konfiguraci.
Tato sekce shrnuje běžné problémy a jejich řešení, od začátečnické po středně pokročilou úroveň.
8-1. Nelze se připojit k Docker daemonu
● Chybová zpráva
Cannot connect to the Docker daemon at unix:///var/run/docker.sock.
● Příčiny a řešení
- Docker daemon neběží :
sudo systemctl start docker - Změny ve skupině docker nebyly aplikovány : Odhlaste se a přihlaste znovu, nebo spusťte
newgrp docker - Problém s oprávněním k /var/run/docker.sock : Ujistěte se, že uživatel patří do skupiny docker
8-2. Chyby „Permission Denied“
● Typická chyba
Got permission denied while trying to connect to the Docker daemon socket
● Řešení
Příčinou je téměř vždy chybějící konfigurace skupiny docker.
sudo usermod -aG docker $USER
Poté se odhlaste a přihlaste znovu.
answer.### 8-3. GPG Errors When Adding the APT Repository
● Error examples
NO_PUBKEY XXXXXXXX
or
The following signatures couldn't be verified
● Causes and fixes
- GPG key was not registered correctly
- curl failed due to network restrictions
Re-register the key with:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
Then run sudo apt update again.
8-4. Port Binding Conflicts
● Error example
Bind for 0.0.0.0:80 failed: port is already allocated.
● Cause
- The port is already used by another process on the host
- Another Docker container is using the same port
● Solutions
Check which process is using the port:
sudo lsof -i -P -n | grep :80
Check running containers:
docker ps
Change the port mapping:
-p 8080:80
8-5. Image Download Failures
● Common causes
- Network restrictions (corporate environments)
- DNS configuration issues
- Blocked access to Docker Hub
● Solutions
- Change DNS servers (e.g. 1.1.1.1 or 8.8.8.8)
- Verify proxy configuration
- Use a VPN if required by the environment
8-6. Disk Space Exhaustion Errors
● Typical message
no space left on device
● Resolution
Remove unused resources:
docker system prune -a
Review images, containers, and volumes:
docker images
docker ps -a
docker volume ls
Disk space exhaustion is one of the most common Docker operational issues.


