端末の写真はGoogleフォトとOneDriveでバックアップと取っているが、後者はWindows機にファイルが原則Cドライブにコピーされるためにメインドライブが圧迫されるし、過去の写真もあるので別のHDDにバックアップを取っていたのだが、これを自分のサーバー上で写真・動画管理を行えるオープンソースのプラットフォーム Immich を導入する。
■Immich をインストール
インストールディレクトリーの作成
mkdir -p /mnt/data/docker/immich cd /mnt/data/docker/immich
設定ファイル docker-compose.ymlの作成
nano /mnt/data/docker/immich/docker-compose.yml
name: immich
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
- /mnt/data/docker/immich/external:/mnt/external:ro
env_file:
- .env
ports:
- 2283:2283
depends_on:
- redis
- database
restart: always
immich-machine-learning:
container_name: immich_machine_learning
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
volumes:
- model-cache:/cache
env_file:
- .env
restart: always
redis:
container_name: immich_redis
image: docker.io/redis:6.2-alpine
restart: always
database:
container_name: immich_postgres
image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
volumes:
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
restart: always
volumes:
model-cache:
Immich 設定ファイル .env 作成
nano /mnt/data/docker/immich/.env
UPLOAD_LOCATION=/mnt/data/docker/immich/library DB_DATA_LOCATION=/mnt/data/docker/immich/postgres TZ=Asia/Tokyo IMMICH_VERSION=release DB_PASSWORD=immich_db_pass_change_me DB_USERNAME=postgres DB_DATABASE_NAME=immich
immich 起動
cd /mnt/data/docker/immich docker compose up -d