version: "3.8" services: immich-server: image: immich-server-dev:1.9.0 build: context: ../server dockerfile: Dockerfile command: npm run start:dev immich expose: - "3000" volumes: - ../server:/usr/src/app - ${UPLOAD_LOCATION}:/usr/src/app/upload - /usr/src/app/node_modules env_file: - .env environment: - NODE_ENV=development depends_on: - redis - database networks: - immich-network immich-machine-learning: image: immich-machine-learning-dev:1.9.0 build: context: ../machine-learning dockerfile: Dockerfile command: npm run start:dev expose: - "3001" volumes: - ../machine-learning:/usr/src/app - ${UPLOAD_LOCATION}:/usr/src/app/upload - /usr/src/app/node_modules env_file: - .env environment: - NODE_ENV=development depends_on: - database networks: - immich-network immich-microservices: image: immich-microservices:1.9.0 build: context: ../server dockerfile: Dockerfile command: npm run start:dev microservices volumes: - ../server:/usr/src/app - ${UPLOAD_LOCATION}:/usr/src/app/upload - /usr/src/app/node_modules env_file: - .env environment: - NODE_ENV=development depends_on: - database networks: - immich-network immich-web: image: immich-web-dev:1.9.0 build: context: ../web dockerfile: Dockerfile target: dev command: npm run dev --host env_file: - .env ports: - 3002:3002 - 24678:24678 volumes: - ../web:/usr/src/app - /usr/src/app/node_modules networks: - immich-network restart: always redis: container_name: immich_redis image: redis:6.2 networks: - immich-network database: container_name: immich_postgres image: postgres:14 env_file: - .env environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} PG_DATA: /var/lib/postgresql/data volumes: - pgdata:/var/lib/postgresql/data ports: - 5432:5432 networks: - immich-network nginx: container_name: proxy_nginx image: nginx:latest volumes: - ./settings/nginx-conf:/etc/nginx/conf.d ports: - 2283:80 - 2284:443 logging: driver: none networks: - immich-network depends_on: - immich-server networks: immich-network: volumes: pgdata: