Coti Lab
kuro editor
업데이트
4분

Immich로 구글포토 대체하기: 사진 백업 셀프호스팅

Immich로 구글포토 대체하기

구글포토는 무제한(정확히는 저장공간 공유) 사진 백업으로 오랫동안 사랑받았지만, 정책 변경으로 요금제에 따라 저장 용량이 제한되면서 많은 사용자들이 대안을 찾기 시작했어요. Immich는 이런 수요에 정확히 부응하는, 구글포토와 거의 동일한 사용자 경험을 제공하는 오픈소스 셀프호스팅 프로젝트예요. 그렇다면 Immich로 구글포토를 완전히 대체한다는 게 실제로 가능한 걸까요?

Immich가 구글포토와 닮은 점

Immich는 자동 백업, 얼굴 인식, 시맨틱 검색까지 구글포토의 핵심 기능을 거의 그대로 재현해요.

  • 모바일 앱 자동 백업: iOS, Android 앱을 설치하면 사진과 동영상이 촬영 즉시 백그라운드에서 자동으로 서버에 업로드돼요.
  • 얼굴 인식: 머신러닝 모델을 통해 사진 속 인물을 자동으로 인식하고 그룹화해요.
  • 사물/장소 인식 검색: “바다”, “강아지”처럼 사진 속 내용을 텍스트로 검색할 수 있는 시맨틱 검색을 지원해요.
  • 타임라인 뷰와 지도 뷰: 촬영 시간순 타임라인과, GPS 정보를 기반으로 한 지도 위 사진 표시 기능을 제공해요.
  • 공유 앨범: 가족이나 친구와 앨범을 공유하고 함께 사진을 추가할 수 있어요.

이 모든 기능이 완전히 내 서버 안에서, 외부 회사로 사진 데이터가 전송되지 않는 상태로 동작한다는 점이 핵심이에요.

설치 구조 이해하기

Immich는 여러 컨테이너가 함께 동작하는 구조예요.

  • immich-server: 핵심 API 서버 역할을 해요.
  • immich-machine-learning: 얼굴 인식, 사물 인식 등 AI 추론을 담당하는 별도 컨테이너예요.
  • postgres: 사진 메타데이터, 사용자 정보를 저장하는 데이터베이스로, pgvector 확장을 사용해 벡터 검색까지 지원해요.
  • redis: 작업 큐를 관리해요.

공식적으로 Docker Compose 템플릿을 제공하기 때문에, docker-compose.yml.env 파일을 내려받아 저장 경로와 데이터베이스 비밀번호만 수정하면 대부분의 사용자가 무리 없이 설치할 수 있어요.

성능을 좌우하는 것: 머신러닝 처리

얼굴 인식과 사물 인식 기능은 CPU 혹은 GPU에서 머신러닝 모델을 실행해요. 사진이 많을수록(수만 장 이상) 초기 색인 작업에 시간이 걸리는데, NVIDIA GPU가 있다면 CUDA 가속을 활성화해 이 과정을 크게 단축할 수 있어요. GPU가 없는 저사양 서버라면 초기 색인에 며칠이 걸릴 수도 있다는 점을 감안해야 해요.

마이그레이션: 구글포토에서 넘어오기

구글 Takeout을 통해 구글포토의 전체 사진과 메타데이터(JSON 형식의 촬영 날짜, GPS 정보 등)를 내려받을 수 있어요. Immich는 커뮤니티에서 만든 immich-go라는 도구를 통해 이 Takeout 데이터를 가져오면서 원본 촬영 날짜와 앨범 구조까지 최대한 보존해 임포트할 수 있도록 지원해요.

실사용에서 주의할 점

백업 이중화가 가장 먼저 챙겨야 할 부분이에요. Immich 자체는 백업 서비스가 아니라 사진을 저장하고 보여주는 애플리케이션이라, 서버의 디스크가 고장 나면 사진도 함께 사라질 수 있어요. 3-2-1 백업 원칙(원본 포함 3개 사본, 2개의 다른 매체, 1개는 오프사이트)에 따라 별도의 백업 체계를 갖추는 게 필수예요. 원본 라이브러리를 다른 서버나 NAS로도 자동 복제해두고 싶다면 Syncthing을 함께 구성하는 것도 좋은 방법이에요.

모바일 앱의 백그라운드 업로드 안정성도 알아둬야 해요. iOS의 백그라운드 실행 제약 때문에 앱을 자주 열어주지 않으면 업로드가 지연될 수 있어요. 이는 iOS 플랫폼 자체의 제약이라 Immich만의 문제는 아니지만, 사용 패턴에 따라 체감될 수 있어요.

결론

Immich는 빠르게 발전하고 있는 프로젝트로, 이미 많은 사용자가 구글포토를 완전히 대체하는 데 성공적으로 활용하고 있어요. 사진처럼 개인적이고 대체 불가능한 데이터를 다루는 만큼, 셀프호스팅의 장점(프라이버시, 무제한 용량)과 책임(백업 관리)을 함께 이해하고 시작하는 게 중요해요. 집 밖에서도 앱으로 서버에 안전하게 접속하고 싶다면 Tailscale을 함께 구성해두는 걸 추천해요.

자주 묻는 질문

Q1. Immich만 설치하면 백업이 안전한가요?

아니요, Immich는 백업 서비스가 아니라 사진을 저장·표시하는 애플리케이션이라 서버 디스크가 고장 나면 사진도 함께 사라질 수 있어요. 3-2-1 원칙에 따라 별도의 백업 체계를 반드시 갖춰야 해요.

Q2. 구글포토에 있던 사진을 그대로 옮겨올 수 있나요?

네, 구글 Takeout으로 내려받은 데이터를 immich-go 도구로 가져오면 원본 촬영 날짜와 앨범 구조까지 최대한 보존해 임포트할 수 있어요.

Q3. GPU가 없어도 얼굴 인식 기능을 쓸 수 있나요?

네, CPU로도 동작하지만 사진이 수만 장 이상이면 초기 색인에 며칠이 걸릴 수 있어, NVIDIA GPU로 CUDA 가속을 쓰면 이 과정을 크게 단축할 수 있어요.

Q4. 아이폰에서 사진이 자동으로 안 올라갈 때가 있는데 왜 그런가요?

iOS의 백그라운드 실행 제약 때문에 앱을 자주 열어주지 않으면 업로드가 지연될 수 있으며, 이는 Immich만의 문제가 아니라 iOS 플랫폼 자체의 제약이에요.

Q5. 가족과 앨범을 공유할 수 있나요?

네, 공유 앨범 기능으로 가족이나 친구와 앨범을 공유하고 함께 사진을 추가할 수 있어요.

k
kuro editor 자료 조사하고 분석하고 글을 읽기 쉽게 작성합니다
프로필

댓글

첫 번째 댓글을 남겨보세요!