Compose-Examples/examples/immich/docker-compose.yml
LRVT ab5c2b6a38
Create docker-compose.yml
add new immich compose
2023-11-21 12:57:02 +01:00

124 lines
3.1 KiB
YAML

# stack for immich >= v1.88.0
version: "3.8"
services:
immich-server:
container_name: immich-server
image: altran1502/immich-server:release
command: [ "start.sh", "immich" ]
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
environment:
- NODE_ENV=production
ports:
- 2283:3001
expose:
- 3001
depends_on:
- immich-redis
- immich-database
- immich-typesense
restart: unless-stopped
#networks:
# - proxy
#labels:
# - traefik.enable=false
# - traefik.http.routers.immich.rule=Host(`immich.example.com`)
# - traefik.http.services.immich.loadbalancer.server.port=3001
# - traefik.docker.network=proxy
# # Part for local lan services only
# - traefik.http.routers.immich.middlewares=local-ipwhitelist@file
# - "com.centurylinklabs.watchtower.enable=true"
immich-microservices:
container_name: immich-microservices
image: altran1502/immich-server:release
command: [ "start.sh", "microservices" ]
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
environment:
- NODE_ENV=production
depends_on:
- immich-redis
- immich-database
- immich-typesense
restart: unless-stopped
#labels:
# - "com.centurylinklabs.watchtower.enable=true"
#networks:
# - proxy
immich-typesense:
container_name: immich-typesense
hostname: typesense
image: typesense/typesense:0.24.1
environment:
- TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
- TYPESENSE_DATA_DIR=/data
# remove this to get debug messages
- GLOG_minloglevel=1
volumes:
- ${TYPESENSE_LOCATION}:/data
restart: unless-stopped
#labels:
# - "com.centurylinklabs.watchtower.enable=true"
#networks:
# - proxy
immich-machine-learning:
image: altran1502/immich-machine-learning:release
container_name: immich-ml
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- model-cache:/cache
env_file:
- .env
environment:
- NODE_ENV=production
restart: unless-stopped
#labels:
# - "com.centurylinklabs.watchtower.enable=true"
#networks:
# - proxy
immich-redis:
container_name: immich-redis
image: redis:6.2-alpine
restart: unless-stopped
#labels:
# - "com.centurylinklabs.watchtower.enable=true"
#networks:
# - proxy
immich-database:
container_name: immich-database
image: postgres:14-alpine
env_file:
- .env
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
PG_DATA: /var/lib/postgresql/data
volumes:
- ${DB_DATABASE_LOCATION}:/var/lib/postgresql/data
restart: unless-stopped
#labels:
# - "com.centurylinklabs.watchtower.enable=true"
#networks:
# - proxy
volumes:
model-cache:
#networks:
# proxy:
# external: true