Docker sám o sobě vyžaduje velmi malou režii, pouze izoluje proces od ostatních procesů na hostiteli. Existuje však mnoho věcí, které můžete udělat pro snížení výkonu kontejneru:
- Spouštějte jej ve Windows/MacOS a poskytněte vestavěnému virtuálnímu počítači pouze zlomek paměti/CPU nadřazeného OS.
- Omezte zdroje CPU nebo paměti uvnitř kontejneru.
- Spusťte na svém hostiteli spoustu kontejnerů. Docker není kouzlo, pokud 10 instancí Javy, z nichž každá používá 2 giga paměti ram, přivede hostitele k procházení mimo kontejner, nepoběží lépe v kontejnerech.
- Síťové komplikace. Každý kontejner je ve výchozím nastavení spuštěn na izolovaném síťovém mostě, kde IO může s dalšími skoky trvat o něco déle. A pokud váš DNS není správně nakonfigurován, můžete zaznamenat další zpoždění při neúspěšných vyhledáváních.
- Požadavky na holé kovy, jako je přímý přístup k disku, nejsou ve výchozím nastavení v Dockeru povoleny. Můžete poskytnout přístup ke konkrétním zařízením, ale jinak je kontejnerová verze aplikace záměrně izolovaná.
- Data ve svazcích mohou být uložena na méně efektivním místě. Ve výchozím nastavení je to váš souborový systém /var/lib/docker, ale můžete to snadno nasměrovat na připojení NFS, kde by byl výkon ještě horší.
- Špatně nakonfigurovaná databáze, např. zapomenete vytvořit index.
Stručně řečeno, kontejner pravděpodobně nebude problémem samotným, ale ujistěte se, že porovnáváte jablka s jablky.