# See: # - https://immich.app/docs/developer/setup # - https://immich.app/docs/developer/troubleshooting version: "3.8" name: immich-dev x-server-build: &server-common image: immich-server-dev:latest build: context: ../ dockerfile: server/Dockerfile target: dev volumes: - ../server:/usr/src/app - ${UPLOAD_LOCATION}/photos:/usr/src/app/upload - /usr/src/app/node_modules - /etc/localtime:/etc/localtime:ro env_file: - .env environment: - NODE_ENV=development ulimits: nofile: soft: 1048576 hard: 1048576 services: immich-server: container_name: immich_server command: npm run start:debug immich <<: *server-common ports: - 3001:3001 - 9230:9230 depends_on: - redis - database - typesense immich-microservices: container_name: immich_microservices command: npm run start:debug microservices <<: *server-common # extends: # file: hwaccel.yml # service: hwaccel ports: - 9231:9230 depends_on: - database - immich-server - typesense immich-web: container_name: immich_web image: immich-web-dev:1.9.0 build: context: ../web dockerfile: Dockerfile command: npm run dev --host env_file: - .env ports: - 2283:3000 - 24678:24678 volumes: - ../web:/usr/src/app - /usr/src/app/node_modules ulimits: nofile: soft: 1048576 hard: 1048576 restart: unless-stopped depends_on: - immich-server immich-machine-learning: container_name: immich_machine_learning image: immich-machine-learning-dev:latest build: context: ../machine-learning dockerfile: Dockerfile ports: - 3003:3003 volumes: - ../machine-learning:/usr/src/app - model-cache:/cache env_file: - .env environment: - NODE_ENV=development depends_on: - database restart: unless-stopped typesense: container_name: immich_typesense image: typesense/typesense:0.24.1@sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd environment: - TYPESENSE_API_KEY=${TYPESENSE_API_KEY} - TYPESENSE_DATA_DIR=/data # remove this to get debug messages - GLOG_minloglevel=1 volumes: - ${UPLOAD_LOCATION}/typesense:/data redis: container_name: immich_redis image: redis:6.2-alpine@sha256:80cc8518800438c684a53ed829c621c94afd1087aaeb59b0d4343ed3e7bcf6c5 database: container_name: immich_postgres image: postgres:14-alpine@sha256:50d9be76e9a90da4c781554955e0ffc79d9d5c4226838e64b36aacc97cbc35ad env_file: - .env environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} volumes: - ${UPLOAD_LOCATION}/postgres:/var/lib/postgresql/data ports: - 5432:5432 volumes: model-cache: