Pakketpagina's zetten RAM vooraan, maar een volle schijf legt een server net zo zeker plat. Bij "No space left on device" stoppen databases met schrijven en websites met antwoorden, hoeveel geheugen er ook vrij is. Schijfgebruik is goed te voorspellen als je weet wat groeit. We startten verse servers vanuit onze eigen images en maten elk van de gebruikelijke verdachten.
Wat een verse server inneemt
Gemeten direct na de eerste start:
| Systeem | Ingenomen |
|---|---|
| Alpine Linux 3.21 | 153 MB |
| Debian 12 | 1,2 GB |
| Ubuntu 24.04 | 2,7 GB |
| Windows Server 2022 | 14,0 GB |
Op Linux is bijna een hele Nano van 15 GB vanaf dag één van jou. Windows neemt meer dan een kwart van zijn 50 GB in voordat je iets installeert, en zoals je hieronder ziet, nemen updates nog meer.
Een deel van de 2,7 GB van Ubuntu was makkelijk terug te halen. 440 MB was de pakketcache van de updates bij de eerste start, en er stonden drie kernels terwijl er één draait. Twee commando's brachten het gebruik naar 2,16 GB:
sudo apt clean
sudo apt autoremove --purge
Docker: images tellen snel op
Docker zelf installeren voegde ongeveer 300 MB toe. Het zijn de images die tellen. We haalden er acht gangbare binnen, de een na de ander, en maten elke keer hoeveel de schijf groeide:
| Image | Extra ingenomen |
|---|---|
nginx:alpine | 91 MB |
nginx:latest | 232 MB |
postgres:16 | 501 MB |
python:3.12-slim | 59 MB |
node:22 | 1.564 MB |
mariadb:11 | 437 MB |
wordpress:latest | 960 MB |
redis:7-alpine | 55 MB |
| Totaal | 3,9 GB |
Images met een gedeelde basis hergebruiken de lagen ervan. Daarom voegde python:3.12-slim maar 59 MB toe: nginx:latest en postgres:16 hadden dezelfde Debian-basis al meegebracht. Images op basis van Alpine zijn vele malen kleiner dan de volledige. node:22 alleen al weegt 1,5 GB, dus bouw waar je kunt op node:22-slim of node:22-alpine.
Images stapelen zich op bij updates: elke docker compose pull laat de oude versie achter. Op onze testserver ruimde één commando ze allemaal op:
docker system df
docker system prune -a
Het meldde 4,1 GB vrijgemaakt. prune -a verwijdert elke image die geen enkele container gebruikt, dus voer het uit terwijl je stack draait. Volumes blijven onaangeroerd, tenzij je --volumes toevoegt.
Logs: wat een schijf in één nacht vult
Docker bewaart alles wat een container uitvoert, standaard zonder groottelimiet. We startten een container die in een lus één korte regel uitvoerde, het soort uitvoer dat een healthcheck of debugmodus geeft. Na 30 seconden was het logbestand 6 MB. In dat tempo zou hij ongeveer 17 GB per dag schrijven, meer dan de hele schijf van een Micro-pakket.
Stel een limiet in voor alle nieuwe containers in /etc/docker/daemon.json:
{
"log-driver": "local",
"log-opts": { "max-size": "10m", "max-file": "3" }
}
Voer daarna sudo systemctl restart docker uit en maak je containers opnieuw aan (docker compose up -d --force-recreate). Bestaande containers houden de instellingen waarmee ze zijn aangemaakt. Met de limiet was het log van dezelfde testcontainer na 30 seconden 4 MB en kan het nooit boven 30 MB uitkomen.
Het systeemjournaal is al begrensd: op onze Ubuntu-server van 25 GB beperkt journald zich tot 2,3 GB, een tiende van het bestandssysteem. Het gebruikte 15 MB.
Windows: updates hebben ruimte nodig
Onze Windows Server 2022-image stamde uit 2022, dus we hebben hem bijgewerkt. Terwijl de eerste cumulatieve update werd geïnstalleerd, steeg het gebruik van 12,6 naar 20,8 GB, en na de tweede bereikte het 24,5 GB. Windows bewaart de oude versie van elk systeembestand dat een update vervangt. Opruimen bracht het terug naar 14,6 GB, en een nieuwe server uit de bijgewerkte image start nu op 14 GB. Houd minstens 10 GB vrij voor de volgende update. De handleiding voor Windows-updates bevat de opruimcommando's.
Wat te kiezen
| Wat je draait | Ruime schijf | Pakket |
|---|---|---|
| Een bot, een VPN, een kleine statische site | 15 GB | Nano, $3/mnd |
| Een Docker-stack met een paar images | 25 GB | Micro, $5/mnd |
| WordPress met database en uploads, meerdere stacks | 35 GB | Small, $8/mnd |
| Grotere databases, veel images, lokale back-ups | 45 GB | Medium, $12/mnd |
| Windows Server 2022 | 50–60 GB | Windows-Small, $11/mnd |
Twee regels laten elk pakket langer meegaan: begrens containerlogs vóór de uitrol, en kopieer back-ups van de server af in plaats van ze op zijn schijf te bewaren. Is een server al vol, dan neemt onze handleiding om schijfruimte vrij te maken je stap voor stap mee. Voor de geheugenkant van het kiezen, zie hoeveel RAM een VPS nodig heeft. Alle pakketten staan op de pagina VPS, en je betaalt in USDT, USDC of ETH via Base, Ethereum of Polygon.
Reacties
Nog geen reacties. Wees de eerste.