services:
  db:
    image: postgres:17
    container_name: Receipt-Wrangler-DB
    hostname: wrangler-db
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: ["CMD", "pg_isready", "-q", "-d", "wrangler", "-U", "wrangleruser"]
      timeout: 45s
      interval: 10s
      retries: 10
    volumes:
      - /volume1/docker/projects/receiptwrangler/db:/var/lib/postgresql/data:rw
    environment:
      POSTGRES_DB: wrangler
      POSTGRES_USER: wrangleruser
      POSTGRES_PASSWORD: wranglerpass
    restart: on-failure:5

  redis:
    image: redis
    hostname: wrangler-redis
    command: redis-server --requirepass redispass
    container_name: Receipt-Wrangler-REDIS
    user: 1000:1000
    healthcheck:
     test: ["CMD-SHELL", "redis-cli ping || exit 1"]
    volumes:
      - /volume1/docker/projects/receiptwrangler/redis:/data:rw
    environment:
      TZ: Europe/London 
    restart: on-failure:5

  wrangler:
    image: noah231515/receipt-wrangler:latest
    container_name: Receipt-Wrangler
    healthcheck:
      test: timeout 10s bash -c ':> /dev/tcp/127.0.0.1/80' || exit 1
      interval: 10s
      timeout: 5s
      retries: 3
      start_period: 90s
    entrypoint: ./entrypoint.sh
    volumes:
      - /volume1/docker/projects/receiptwrangler/data:/app/receipt-wrangler-api/sqlite:rw
      - /volume1/docker/projects/receiptwrangler/data:/app/receipt-wrangler-api/data:rw
      - /volume1/docker/projects/receiptwrangler/logs:/app/receipt-wrangler-api/logs:rw
    environment:
       ENCRYPTION_KEY: bearsadventures
       SECRET_KEY: FaTvf8vjxdZMVlouDsFo1bTAD6AqFA5e
       REDIS_PORT: 6379
       REDIS_HOST: wrangler-redis
       REDIS_PASSWORD: redispass
       DB_USER: wrangleruser
       DB_PASSWORD: wranglerpass
       DB_NAME: wrangler
       DB_HOST: db
       DB_PORT: 5432
       DB_ENGINE: postgresql
    depends_on:
      db:
        condition: service_healthy
      redis:
        condition: service_healthy
    ports:
      - 9112:80
    restart: on-failure:5

first time login is user : admin password: admin

we are in

Press the + button and then select Manager users

Select the 3 *** stars to change the password on login.

Secure your Container

that’s it enjoy and collect those reciept