version: "3.8" services: immich-server: image: altran1502/immich-server:release entrypoint: ["/bin/sh", "./start-server.sh"] volumes: - ./upload:/usr/src/app/upload env_file: - .env environment: - NODE_ENV=production depends_on: - redis - database restart: always networks: - internal immich-microservices: image: altran1502/immich-server:release entrypoint: ["/bin/sh", "./start-microservices.sh"] volumes: - ./upload:/usr/src/app/upload env_file: - .env environment: - NODE_ENV=production depends_on: - redis - database restart: always networks: - internal immich-machine-learning: image: altran1502/immich-machine-learning:release entrypoint: ["/bin/sh", "./entrypoint.sh"] volumes: - ./upload:/usr/src/app/upload env_file: - .env environment: - NODE_ENV=production depends_on: - database restart: always networks: - internal immich-web: image: altran1502/immich-web:release entrypoint: ["/bin/sh", "./entrypoint.sh"] env_file: - .env restart: always networks: - internal redis: container_name: immich_redis image: redis:6.2 restart: always networks: - internal 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 restart: always networks: - internal immich-proxy: container_name: immich_proxy image: altran1502/immich-proxy:release logging: driver: none depends_on: - immich-server restart: always networks: - internal - proxy volumes: pgdata: networks: internal: {} proxy: external: true