Files
container/immich/docker-compose.yml

89 lines
2.4 KiB
YAML
Raw Normal View History

2025-11-29 12:45:53 +00:00
version: "3.9"
2025-11-29 12:42:21 +00:00
services:
immich-server:
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-latest}
2025-11-29 12:45:53 +00:00
container_name: immich-server
2025-11-29 12:42:21 +00:00
volumes:
2025-11-29 12:45:53 +00:00
- ${UPLOAD_LOCATION:-./immich_upload}:/usr/src/app/upload
2025-11-29 12:42:21 +00:00
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
environment:
2025-11-29 12:45:53 +00:00
NODE_ENV: ${NODE_ENV:-production}
DB_HOST: ${DB_HOST:-immich-database}
DB_PORT: ${DB_PORT:-5432}
DB_USERNAME: ${DB_USERNAME:-immich}
DB_PASSWORD: ${DB_PASSWORD:-immich}
DB_DATABASE_NAME: ${DB_DATABASE_NAME:-immich}
REDIS_HOSTNAME: ${REDIS_HOSTNAME:-immich-redis}
REDIS_PORT: ${REDIS_PORT:-6379}
JWT_SECRET: ${JWT_SECRET:-changemeplease}
2025-11-29 12:42:21 +00:00
ports:
2025-11-29 12:45:53 +00:00
- "${IMMICH_PORT:-2283}:2283"
2025-11-29 12:42:21 +00:00
expose:
- 2283
depends_on:
- immich-redis
- immich-database
restart: unless-stopped
networks:
- proxy
- immich-internal
#labels:
# - traefik.enable=true
# - traefik.http.routers.immich.rule=Host(`immich.example.com`)
# - traefik.http.services.immich.loadbalancer.server.port=2283
# - traefik.docker.network=proxy
immich-machine-learning:
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
container_name: immich-ml
volumes:
2025-11-29 12:45:53 +00:00
- ${UPLOAD_LOCATION:-./immich_upload}:/usr/src/app/upload
2025-11-29 12:42:21 +00:00
- model-cache:/cache
env_file:
- .env
environment:
2025-11-29 12:45:53 +00:00
NODE_ENV: ${NODE_ENV:-production}
2025-11-29 12:42:21 +00:00
restart: unless-stopped
networks:
2025-11-29 12:45:53 +00:00
- proxy
2025-11-29 12:42:21 +00:00
- immich-internal
immich-redis:
2025-11-29 12:45:53 +00:00
image: docker.io/valkey/valkey:${REDIS_VERSION:-8-bookworm}
2025-11-29 12:42:21 +00:00
container_name: immich-redis
restart: unless-stopped
healthcheck:
test: redis-cli ping || exit 1
networks:
- immich-internal
immich-database:
2025-11-29 12:45:53 +00:00
image: ghcr.io/immich-app/postgres:${POSTGRES_VERSION:-14-vectorchord0.3.0-pgvectors0.2.0}
2025-11-29 12:42:21 +00:00
container_name: immich-database
env_file:
- .env
environment:
2025-11-29 12:45:53 +00:00
POSTGRES_PASSWORD: ${DB_PASSWORD:-immich}
POSTGRES_USER: ${DB_USERNAME:-immich}
POSTGRES_DB: ${DB_DATABASE_NAME:-immich}
2025-11-29 12:42:21 +00:00
POSTGRES_INITDB_ARGS: '--data-checksums'
PG_DATA: /var/lib/postgresql/data
volumes:
2025-11-29 12:45:53 +00:00
- ${DB_DATABASE_LOCATION:-./immich_db}:/var/lib/postgresql/data
2025-11-29 12:42:21 +00:00
restart: unless-stopped
networks:
- immich-internal
2025-11-29 12:45:53 +00:00
2025-11-29 12:42:21 +00:00
volumes:
model-cache:
networks:
proxy:
external: true
immich-internal:
2025-11-29 12:45:53 +00:00
internal: true