시놀로지 도커에 IDIM (Immich Docker Image Manager) 설치하기

image.png

Immich Docker Image Manager

이미치 업데이트가 너무 자주 되다보니 귀찮아서 만들어 봤습니다

이미지 태그를 latest 태그를 사용 했다면 시놀 컨테이너 매니저에서 업데이트가 될텐데

release 태그를 사용해서 업데이트가 안되더라고요

 

저 같은 경우 이미치 프로젝트를 정리하고 이미지를 지우고 다시 빌드를 하는 방식으로 업데이트를 했습니다

 

우선 설치하기 전에 필요한 부분

  • 시놀로지 외의 환경에서는 테스트 되지 않았습니다
  • 파이썬 3.9 패키지가 필요 합니다
  • immich release 태그이미지를 사용해야 합니다
  • 컨테이너 매니저에서 프로젝트로 생성한 이미치만 테스트 해봤습니다
  • 다른 방법으로 설치한 이미치는 테스트 안해봤습니다…
  • 이미치 설치 폴더 안에 compose 파일이 있다면 작동할 수도 있을 겁니다…

 

  • 파이썬 3.9 패키지가 설치 된 시놀로지에 컨테이너 매니저를 통해 설치 한 이미치는 잘 작동 합니다

설치 방법은

 

version: "3.9"

services:
  idim:
    image: sruinz/idim:latest
    container_name: idim-container
    ports:
      - "7838:7838"
    env_file:
      - .env  # 🆕 .env 파일에서 환경 변수 로드
    
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock  # 호스트의 Docker 소켓을 컨테이너에 마운트
      - /volume1/docker/Immich:/volume1/docker/Immich  # Immich 프로젝트 디렉토리 마운트
      - ./backup:/app/backups
    restart: always

좌측 7838포트는 접속 포트 입니다 편한 포트로 수정 하시면 됩니다

이미치 폴더는 좌:우 동일하게 매핑 해주세요 

여러 개의 이미치를 사용하시는 경우 각각의 폴더를 추가 하시면 됩니다

IDIM 폴더에 backup 폴더를 생성 해주세요

.env 파일도 생성 해주세요

# 캐시 설정
CACHE_DURATION=300 # 캐시 유지 시간 (초)

# GitHub 토큰 (선택 사항)
GITHUB_TOKEN=깃 허브 클래식 토큰 (repo권한)

# 자동 업데이트 설정 - v1.12 스케쥴 모드 업데이트
AUTO_UPDATE_ENABLED=true # 자동 업데이트 설정 true / false
SCHEDULE_TIMES=00:00,12:00, 01:15  # 이게 우선 적용됨 KST 24:00 형식
AUTO_UPDATE_INTERVAL=24 # 업데이트 감시 주기 (시간) -  스케줄 방식 사용 시 무시됨

# 텔레그램 알림 설정
TELEGRAM_TOKEN=텔레그램 봇 API 토큰
TELEGRAM_CHAT_ID=알림을 받을 텔레그램 챗 ID

# 디스코드 알림 설정
DISCORD_TOKEN=디스코드 봇 API 토큰
DISCORD_CHANNEL_ID=알림을 받을 디스코드 채널 ID

# 백업 설정
BACKUP_ENABLED=true # 자동 업데이트 전 기존 이미지 백업 설정 true / false
MAX_BACKUPS=5 # 최대 백업 갯수 설정

.env 파일

캐시 유지시간을 설정 할 수 있습니다

이게 깃헙 API를 사용해 정보를 가져오는 건데

익명 사용자는 시간당 60번의 요청만 할 수 있습니다

캐시 유지 시간 동안에는 API요청을 하지 않습니다

깃헙 토큰입력 하시면 시간당 5000번의 요청이 가능 해집니다

다른 부분은 주석 내용에 맞게 설정 해주세요

사용 안하시는 옵션은 삭제나 # 주석 처리 해주세요

 

v1.12 버전에서 자동 업데이트 스케쥴 기능이 추가 됐습니다

 

설치 하시고 서버아이피:포트 로 접속 하시면

 

image.png

메인 페이지에 확인 중… 표시 후

 

image.png

로딩이 완료 되면 최신 버전 정보가 표시되고

경고가 있는 경우 릴리즈 경고가 표시 됩니다

 

다크모드 라이트모드 있고요

반응형 UI로 모바일에서도 깨지지 않게 만들었습니다

 

릴리즈 경고란?

 

image.png

이미치 릴리즈노트에 이런 중요 알림이 있는 경우 경고 메세지를 표시 합니다

 

image.png

현재 버전과 최신 버전 사이의 경고가 포함된 목록을 표시 합니다

 

image.png

최신 버전 확인 버튼을 누르시면 각 버전별 릴리즈 노트 링크가 표시 됩니다

 

최신 버전과 현재 버전 차이가 많이 날 수록 많은 API요청을 하게 됩니다

뭐 버전 두 세 단계 정도면 상관 없지만 저 같은 경우 테스트 한다고

1.100.0 버전을 현재 버전으로 지정하고 테스트 하니 한 번에 30번 이상의 요청을 하더라고요

60번을 넘으면 버전 정보나 릴리즈 노트의 경고 목록등을 볼 수 없으니

캐시 시간을 잘 조절하시길 바랍니다 아니면 깃헙 토큰 입력 하시면 됩니다

 

물론 2~3개 버전 차이면 큰 문제 없으니 그냥 쓰셔도 됩니다

image.png

image.png

주소 끝에 /admin 을 입력 하시면 관리자 페이지로 접속 가능 합니다

캐시 강제 갱신 버튼과 캐시 상태 정보, API잔여량 정보와 백업한 이미지를 복원 할 수 있는 버튼이 있습니다

 

 

image.png

최신 버전 확인 버튼을 누르면 이런 창이 팝업으로 뜹니다

링크를 누르시면 깃헙 이미치 릴리즈 페이지로 이동 합니다

 

image.png

이미치 로그 보기 버튼을 누르시면 현재 이미치 이미지를 사용하고 있는 컨테이너의 최근 3개의 로그를 보여 줍니다

  

image.png

도움말 버튼은 뭐 별거 없습니다

 

image.png

이미지 업데이트 버튼을 누르면 현재 실행 중인 컨테이너 목록과 업데이트 확인 버튼이 표시 됩니다

 

image.png

업데이트 진행 버튼을 누르면 빙글빙글 돌아가며 작업이 실행 됩니다

 

image.png

조금 기다리시면 작업 결과가 표시 됩니다

 

저 같은 경우 두 개의 이미치를 사용하기 때문에 

우선 두 개의 이미치 프로젝트를 정리 후

기존 이미지를 삭제하고 새로운 이미지를 다운 받고

다시 프로젝트 폴더에 있는 compose 파일을 이용해 재빌드 하는 순서로 작동합니다

 

알림 메세지는 이렇게 표시 됩니다

 

IDIM 시작 시 현재 설정 정보를 알려 줍니다

 

image.png

IDIM 컨테이너의 버전 정보가 표시 됩니다

그 후에 현재 버전과 최신 버전을 비교 검색 합니다

 

image.png

최신 버전을 사용 중인 경우  – 여기서 멈춥니다

 

image.png

새 버전이 발견 된 경우 – a b c 상황에 따라 다음 메세지가 나타납니다

 

image.png

a. 새 버전이 발견 됐지만 컨테이너가 중지 상태인 경우

 

image.png

b. 자동 업데이트 성공

 

image.png

c. 새 버전이 발견 됐지만 릴리즈 경고가 있는 경우

 

자동 업데이트가 중단 되더라도 감시 주기가 돌아오면 다시 알림을 줍니다

 

 

잘 안되는 부분은 댓글 남겨 주세요

 

 

v1.11 수정사항 – 250227

이미지 백업/복원 기능 수정

 

https://svrforum.com/nas/2087262

 

https://svrforum.com/nas/2088589

 

https://svrforum.com/nas/2104271

 

 

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다