Compose-Examples/examples/immich/docker-compose.yml

110 lines
3.1 KiB
YAML
Raw Normal View History

2023-12-16 04:12:16 +00:00
# stack for immich >= 1.91.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
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
# # Optional part for file upload max sizes
# - traefik.http.middlewares.limit.buffering.maxRequestBodyBytes=5000000000 # optional, only necessary for file uploads; allow 5000MB
# - traefik.http.middlewares.limit.buffering.maxResponseBodyBytes=5000000000 # optional, only necessary for file uploads; allow 5000MB
# - traefik.http.middlewares.limit.buffering.memRequestBodyBytes=5000000000 # optional, only necessary for file uploads; allow 5000MB
# - traefik.http.middlewares.limit.buffering.memResponseBodyBytes=5000000000 # optional, only necessary for file uploads; allow 5000MB
2023-12-16 04:12:16 +00:00
# # 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
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: tensorchord/pgvecto-rs:pg14-v0.1.11
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