Hệ thống quản lý ảnh cực kỳ bền vững của tôi (phiên bản Immich)
(jaisenmathai.com)Đã xây dựng một hệ thống quản lý ảnh cực kỳ bền vững bằng cách dùng Immich để lưu các thay đổi như album, mô tả, vị trí, ngày tháng, mục yêu thích... vào EXIF của chính tệp ảnh, nhờ đó có thể tự động sao lưu qua Synology NAS + Dropbox ngay cả khi không có cơ sở dữ liệu.
Triết lý cốt lõi (3 ưu tiên)
- Preserve (bảo tồn): Phải có thể duy trì ổn định trong tương lai hàng chục năm mà không gặp vấn đề
- Unify (hợp nhất): Gom ảnh từ nhiều điện thoại của hai vợ chồng vào một thư viện duy nhất
- Experience (trải nghiệm): Phải có thể sống lại ký ức một cách sống động qua ảnh và video
Bối cảnh và cách làm trước đây
- Đã phát triển workflow quản lý ảnh trong hơn 20 năm
- Lưu toàn bộ metadata (album, mô tả, mục yêu thích...) chỉ trong EXIF → không phụ thuộc DB bên ngoài → tối ưu cho lưu trữ dài hạn
- Kho lưu trữ chính: Synology NAS
- Công cụ tổ chức: công cụ CLI mã nguồn mở Elodie do chính tác giả phát triển hơn 10 năm (https://github.com/jmathai/elodie)
- Trước đây: dùng Google Photos như trình xem chỉ đọc → khả năng khám phá, tìm kiếm, tái hiện kỷ niệm rất tốt nhưng đã từ bỏ vì thay đổi chính sách năm 2019 + vấn đề riêng tư
- Synology Photos quá thiếu tính năng nên cần giải pháp thay thế
Áp dụng Immich (cuối 2025 ~ 2026)
- Tính năng external library của Immich (có thể mount thư mục chỉ đọc) là yếu tố quyết định
- Ban đầu dùng như trình xem chỉ đọc → về sau chuyển hẳn thành công cụ tổ chức
- Vấn đề: hành vi mặc định của Immich là lưu metadata vào Postgres DB hoặc XMP sidecar → tác giả từ chối cả hai
→ phát triển cách làm tùy biến để nhúng trực tiếp mọi thay đổi vào EXIF của tệp ảnh
Cách triển khai chính
- Tận dụng API của Immich → khi thêm album, viết mô tả, đánh dấu yêu thích trong UI → ghi vào EXIF
- Tích hợp với Elodie: Elodie di chuyển tệp vào thư mục album + cập nhật EXIF → Immich nhận đó là xóa+tạo tệp → phát sinh sai lệch tạm thời
→ cách giải quyết: áp dụng mô hình eventually consistent (nhất quán cuối cùng) → chấp nhận phản ánh có độ trễ - Không dùng XMP sidecar (được đánh giá là mong manh)
- Kết quả: Immich mang lại trải nghiệm khám phá, tìm kiếm, tái hiện kỷ niệm ở mức Google Photos + vẫn bảo toàn mọi thông tin chỉ bằng EXIF
Công cụ sử dụng & chiến lược sao lưu
- Immich (dùng external library + API)
- Elodie (ánh xạ hệ thống tệp & động cơ cốt lõi cho tổ chức)
- Synology NAS → kho lưu trữ chính
- Dropbox → sao lưu tự động (EXIF thay đổi → chính tệp thay đổi → tự động đồng bộ)
- Plugin tùy biến: https://github.com/jmathai/immich-exif (bản đơn giản)
- Theo dõi tiến độ: https://github.com/jmathai/elodie/issues/496
Ưu điểm
- Bảo tồn hoàn chỉnh chỉ bằng EXIF, không cần cơ sở dữ liệu → 10 năm, 20 năm sau vẫn không vấn đề
- Khôi phục được UI/trải nghiệm khám phá phong phú kiểu Google Photos
- Giải quyết được vấn đề riêng tư và phụ thuộc nền tảng
- Sao lưu kép NAS + Dropbox giúp tối đa hóa độ an toàn
Nhược điểm & thực tế
- Độ khó thiết lập rất cao (chính tác giả cũng mất 2 tuần, có AI hỗ trợ vẫn không dễ)
- Có nhiều điểm xung đột với thiết kế mặc định của Immich nên bắt buộc phải tùy biến
- Không phải phản ánh theo thời gian thực mà là kiểu eventually consistent, nên không đạt realtime tuyệt đối
Cảm nhận kết luận
Tác giả đánh giá rằng mình đã thành công trong việc nâng cấp từ trình xem chỉ đọc thành nền tảng tổ chức + khám phá hoàn chỉnh thông qua Immich, mà vẫn không phải từ bỏ dù chỉ một chút triết lý “chỉ tin EXIF” đã theo đuổi suốt nhiều năm.
Vì phần triển khai kỹ thuật chi tiết sẽ được đăng ở bài viết riêng, nên nếu quan tâm thì đáng để tiếp tục theo dõi issue trên GitHub hoặc blog của anh ấy.
Chưa có bình luận nào.