Halaman paket menonjolkan RAM, tetapi disk yang penuh menjatuhkan server sama pastinya. Dengan "No space left on device", database berhenti menulis dan situs berhenti merespons, berapa pun memori yang tersisa. Pemakaian disk mudah diperkirakan kalau Anda tahu apa yang bertambah. Kami menyalakan server baru dari image kami sendiri dan mengukur setiap tersangka yang biasa.
Berapa yang dipakai server baru
Diukur tepat setelah boot pertama:
| Sistem | Ruang terpakai |
|---|---|
| Alpine Linux 3.21 | 153 MB |
| Debian 12 | 1,2 GB |
| Ubuntu 24.04 | 2,7 GB |
| Windows Server 2022 | 14,0 GB |
Di Linux, hampir seluruh Nano 15 GB milik Anda sejak hari pertama. Windows memakai lebih dari seperempat dari 50 GB-nya sebelum Anda memasang apa pun, dan seperti yang akan Anda lihat di bawah, pembaruan mengambil lebih banyak.
Sebagian dari 2,7 GB Ubuntu mudah diambil kembali. 440 MB adalah cache paket dari pembaruan saat boot pertama, dan ada tiga kernel terpasang padahal hanya satu yang dipakai. Dua perintah menurunkan pemakaian ke 2,16 GB:
sudo apt clean
sudo apt autoremove --purge
Docker: image cepat menumpuk
Memasang Docker sendiri menambah sekitar 300 MB. Yang menentukan adalah image. Kami menarik delapan image populer, satu per satu, dan setiap kali mengukur seberapa besar disk bertambah:
| Image | Ruang bertambah |
|---|---|
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 |
| Total | 3,9 GB |
Image yang berbagi dasar memakai ulang layer-nya, sebab itu python:3.12-slim hanya menambah 59 MB: nginx:latest dan postgres:16 sudah membawa dasar Debian yang sama. Image berbasis Alpine berkali-kali lebih kecil daripada yang lengkap. node:22 sendiri berukuran 1,5 GB, jadi bila bisa, bangun di atas node:22-slim atau node:22-alpine.
Image menumpuk seiring pembaruan: setiap docker compose pull meninggalkan versi lama. Di server uji kami, satu perintah menghapus semuanya:
docker system df
docker system prune -a
Perintah itu melaporkan 4,1 GB berhasil dibebaskan. prune -a menghapus setiap image yang tidak dipakai kontainer mana pun, jadi jalankan saat stack Anda sedang berjalan. Volume tidak disentuh kecuali Anda menambahkan --volumes.
Log: yang mengisi disk dalam semalam
Docker menyimpan semua yang dicetak kontainer, dan secara bawaan tanpa batas ukuran. Kami menjalankan kontainer yang mencetak satu baris pendek dalam loop, jenis keluaran yang dihasilkan pemeriksaan kesehatan atau mode debug. Setelah 30 detik, file lognya 6 MB. Dengan laju itu ia akan menulis sekitar 17 GB per hari, lebih dari seluruh disk paket Micro.
Tetapkan batas untuk semua kontainer baru di /etc/docker/daemon.json:
{
"log-driver": "local",
"log-opts": { "max-size": "10m", "max-file": "3" }
}
Lalu jalankan sudo systemctl restart docker dan buat ulang kontainer Anda (docker compose up -d --force-recreate). Kontainer yang sudah ada tetap memakai pengaturan saat dibuat. Dengan batas itu, log kontainer uji yang sama berukuran 4 MB setelah 30 detik dan tidak akan pernah melebihi 30 MB.
Jurnal sistem sudah dibatasi: di server Ubuntu 25 GB kami, journald membatasi dirinya pada 2,3 GB, sepersepuluh sistem file. Yang terpakai 15 MB.
Windows: pembaruan butuh ruang
Image Windows Server 2022 kami berasal dari 2022, jadi kami memperbaruinya. Selama pembaruan kumulatif pertama terpasang, pemakaian naik dari 12,6 ke 20,8 GB, dan setelah yang kedua mencapai 24,5 GB. Windows menyimpan versi lama dari setiap file sistem yang diganti pembaruan. Pembersihan menurunkannya kembali ke 14,6 GB, dan server baru dari image yang diperbarui kini mulai di 14 GB. Sisakan minimal 10 GB untuk pembaruan berikutnya. Panduan pembaruan Windows memuat perintah pembersihannya.
Apa yang dipilih
| Yang Anda jalankan | Disk yang nyaman | Paket |
|---|---|---|
| Bot, VPN, situs statis kecil | 15 GB | Nano, $3/bln |
| Stack Docker dengan beberapa image | 25 GB | Micro, $5/bln |
| WordPress dengan database dan unggahan, beberapa stack | 35 GB | Small, $8/bln |
| Database besar, banyak image, cadangan lokal | 45 GB | Medium, $12/bln |
| Windows Server 2022 | 50–60 GB | Windows-Small, $11/bln |
Dua aturan membuat paket mana pun lebih awet: batasi log kontainer sebelum deploy, dan salin cadangan ke luar server alih-alih menyimpannya di disknya. Jika server sudah penuh, panduan kami untuk membebaskan ruang disk memandu langkah demi langkah. Untuk sisi memori dalam memilih ukuran, lihat berapa RAM yang dibutuhkan VPS. Semua paket ada di halaman VPS, dengan pembayaran dalam USDT, USDC, atau ETH di jaringan Base, Ethereum, atau Polygon.
Komentar
Belum ada komentar. Jadilah yang pertama.