# homelable - https://github.com/Pouzor/homelable
---
 services:
  backend:
    image: ghcr.io/pouzor/homelable-backend:latest
    container_name: homelable-backend
    restart: unless-stopped
    env_file:
      - .env
    environment:
      - AUTH_USERNAME=${AUTH_USERNAME}
      - AUTH_PASSWORD_HASH=${AUTH_PASSWORD_HASH} # Use a bcrypt hash for security
      - SECRET_KEY=${SECRET_KEY}
      - LIVEVIEW_KEY=${LIVEVIEW_KEY}
    volumes:
      - ./data:/app/data
    ports:
      - "${HOMELABEL_BACK_PORT}:8000"

  mcp:
    image: ghcr.io/pouzor/homelable-mcp:latest
    container_name: homelable-mcp
    restart: unless-stopped
    env_file:
      - .env
    ports:
      - "8001:8001"
    environment:
      BACKEND_URL: "http://backend:8000"
    depends_on:
      - backend

  frontend:
    #image: ghcr.io/pouzor/homelable-frontend-standalone:latest # standalone version
    image: ghcr.io/pouzor/homelable-frontend:latest
    container_name: homelable-frontend
    restart: unless-stopped
    ports:
      - "${HOMELABEL_FRONT_PORT}:80"
    depends_on:
      - backend
    labels:
      # Nginx Proxy Manager Automation
      - "npm.proxy.domains=homelable"
      - "npm.proxy.host=${DOCKER_HOST_IP}"
      - "npm.proxy.port=${HOMELABEL_FRONT_PORT}"
      - "npm.proxy.scheme=http"
      #- "npm.proxy.websockets=true"
      #- "npm.proxy.ssl_verify=false"
      #- "npm.proxy.ssl.force=true"
      #- "npm.proxy.ssl.certificate.id=1"
      - "pihole.custom-record=[[\"homelable\", \"${DOCKER_HOST_IP}\"]]"