Immich di Proxmox dengan ZFS Mirror: Pemasangan dan Cadangan 3-2-1
Terbit 2026-10-27
Immich adalah pustaka foto dan video self-hosted dengan pencadangan dari ponsel. Panduan ini menunjukkan pengaturan yang tahan terhadap kerusakan disk: Immich di dalam VM pada Proxmox, foto di ZFS mirror, dan pencadangan 3-2-1 yang sungguhan di atasnya. Panduan ini mengasumsikan Anda sudah memasang Proxmox dan memiliki dua disk berukuran sama untuk mirror.
Perangkat keras: minimum resmi
| Item | Minimum | Disarankan |
|---|---|---|
| RAM | 6 GB | 8 GB |
| CPU | 2 core | 4 core |
| Penyimpanan database | SSD lokal, jangan pernah berbagi jaringan | |
Sumber: Persyaratan Immich (halaman diperbarui 2026-10-08, diperiksa 2026-10-19). Halaman yang sama mencatat bahwa thumbnail dan video hasil transkode menambah sekitar 10–20% pada ukuran pustaka, dan bahwa dengan RAM hanya 4 GB sebaiknya machine learning dinonaktifkan.
Langkah 1 — Buat ZFS mirror
- Di Proxmox: Datacenter → node → Disks → ZFS → Create: ZFS, pilih kedua disk, RAID level Mirror.
- Mirror dua disk memberi Anda kapasitas satu disk; salah satu disk boleh rusak tanpa kehilangan data.
- Tambahkan sebagai penyimpanan untuk disk VM, atau buat dataset (misalnya
tank/photos) untuk diteruskan ke dalam VM.
Langkah 2 — Buat VM
- Buat VM Debian atau Ubuntu dengan setidaknya spesifikasi minimum di atas. Letakkan disk sistem VM di SSD agar database Postgres berada di SSD lokal.
- Atur tipe CPU ke
host(atau tipe lain yang mendukung x86-64-v2); container machine learning Immich membutuhkan x86-64-v2 pada amd64. - Tambahkan disk virtual kedua di ZFS mirror untuk foto dan mount, misalnya di
/srv/photos.
Immich mendokumentasikan Docker Compose di dalam VM sebagai jalur yang didukung; menjalankannya di dalam container LXC dinyatakan tidak disarankan.
Langkah 3 — Pasang Immich
- Pasang Docker dan plugin Compose.
- Unduh
docker-compose.ymldanexample.envresmi dari dokumentasi instalasi Immich. - Di
.envaturUPLOAD_LOCATION=/srv/photos/librarydan biarkanDB_DATA_LOCATIONtetap di disk sistem SSD. docker compose up -d, buka port 2283, buat akun admin, pasang aplikasi ponsel, lalu aktifkan pencadangan.
Langkah 4 — Pencadangan 3-2-1
Mirror melindungi dari disk yang mati, bukan dari penghapusan, ransomware, atau kebakaran rumah. Dokumentasi Immich sendiri merekomendasikan strategi 3-2-1: 3 salinan, pada 2 jenis media, 1 di luar lokasi (off-site).
| Salinan | Lokasi | Cara |
|---|---|---|
| 1 | ZFS mirror (aktif) | Immich itu sendiri |
| 2 | Disk USB eksternal atau mesin kedua | Snapshot ZFS + zfs send, atau restic/borg |
| 3 | Off-site (bucket cloud atau server teman) | restic/borg dengan enkripsi |
Cadangkan kedua bagiannya. Immich membuat dump database secara otomatis di UPLOAD_LOCATION/backups (default: setiap hari pukul 2:00 pagi, 14 terakhir disimpan). Dump tersebut hanya berisi metadata — tanpa foto — sehingga tugas pencadangan Anda harus menyalin seluruh UPLOAD_LOCATION, yang kemudian sudah mencakup dump itu. Sumber: Pencadangan dan pemulihan Immich, diperiksa 2026-10-19.
Uji pemulihan satu kali: buat VM sementara, pulihkan file dan satu dump, lalu coba login.
Apa lagi yang cocok di server yang sama
- Layanan sinkronisasi file (misalnya Syncthing) di mirror yang sama.
- Server pengelola kata sandi, dicadangkan dengan tugas off-site yang sama.
- Pemantauan (SMART disk dan peringatan scrub ZFS) — asuransi termurah dalam daftar ini.
FAQ
- Apakah mirror adalah cadangan saya?
- Bukan. Mirror adalah redundansi. Menghapus foto berarti menghapusnya di kedua disk seketika.
- Bisakah saya menaruh database di ZFS mirror lewat NFS?
- Immich menyatakan database tidak boleh berada di berbagi jaringan. Simpan di SSD lokal.
- Berapa RAM yang dibutuhkan ZFS sendiri?
- ZFS memakai RAM kosong sebagai cache (ARC) dan melepaskannya saat dibutuhkan; tetapkan dulu RAM untuk VM, lalu biarkan host memakai sisanya.
Sumber
- Persyaratan Immich — dicek 2026-10-19
- Pencadangan dan pemulihan Immich — dicek 2026-10-19
Terkait (bahasa Korea): 개발 지식 모음 (bahasa Korea)
🌐 English · Español · Bahasa Indonesia · 日本語 · ไทย · Tiếng Việt · 中文