Řešení · Kontejnery
Jak velký server potřebuje Docker?
Kontejnery jsou procesy sdílející jedno jádro, ne malé virtuální stroje: démon drží asi 100 MB a vše ostatní jsou jen vaše vlastní procesy. Odpověď je tedy menší, než otázka čeká: proxy, aplikace, databáze a cache dohromady zaberou zhruba 515 MB, což se s rezervou vejde na BD-8 za $12.90.
Co kontejner skutečně drží v paměti
Rozpětí, ne benchmarky
Váš obraz, konfigurace a provoz tato čísla ovlivní víc, než dokáže jakákoli tabulka. Spusťte docker stats na vlastním stacku: to je jediné číslo, které platí pro vás.
| Kontejner | Typická paměť | Vejde se na BD-8 (8 GB) |
|---|---|---|
| Reverzní proxynginx, Caddy, Traefik | 15–60 MB | 129 v horní hranici |
| Malá webová aplikaceNode, Python, Go: jeden proces | 60–200 MB | 38 v horní hranici |
| PostgreSQL nebo MySQLmalá data, výchozí pool | 200–500 MB | 15 v horní hranici |
| Redisjako cache, omezeno maxmemory | 20–200 MB | 38 v horní hranici |
| Služba v JVMJava, Kotlin, Elasticsearch | 500–2000 MB | 3 v horní hranici |
Výpočet
Co který tarif pojme
Paměť minus 300 MB pro operační systém a 100 MB pro démona, vydělená tím, co drží vaše kontejnery. Prostřední sloupec je celý stack (proxy, aplikace, databáze, cache) o velikosti asi 515 MB.
| Tarif | RAM | Celé stacky | Malé aplikace | Disk | Cena | Nasadit |
|---|---|---|---|---|---|---|
| VPS-1 | 1 GB | 1 | 3 | 25 GB | $9.90 | Nasadit |
| BD-8 | 8 GB | 15 | 38 | 100 GB | $12.90 | Nasadit |
| BD-12 | 12 GB | 23 | 59 | 200 GB | $17.90 | Nasadit |
| BD-24 | 24 GB | 46 | 120 | 300 GB | $31.90 | Nasadit |
Disk je druhým překvapením, se kterým se lidé setkají později: obrazy, svazky a logy se tiše hromadí. Dejte docker system prune do týdenního cronu dřív, než to začne hořet, ne až potom.
Proti sobě samým
Kdy tohle nekupovat
Spravovaná kontejnerová platforma stojí víc, protože provoz zajišťuje sama. To je skutečná věc, za kterou se vyplatí platit.
VPS vám dá root a s ním i aktualizace, restarty, certifikáty a noční pohotovost. Je to výrazně levnější a skutečně je to více práce. Pokud tu práci dělat nechcete, poctivou odpovědí je spravovaná platforma a raději vás na ni odkážeme, než abychom prodali stroj, který skončí opuštěný s neaktualizovaným démonem vystaveným internetu. Dvě menší rady v tomtéž duchu: nastavte každému kontejneru limit paměti, aby zemřel ten, který se chová špatně, a ne vaše databáze, a na jednom stroji nesahejte po Kubernetes: orchestrátor, který nemá co plánovat, je jen složitost navíc.
Otázky