LLM: Ubuntu 24.04 desktop - Ollama n8n open-webui WAHA

From OnnoWiki
Jump to navigation Jump to search

docker-compose.yaml

services:
  ################################
  # 1. OLLAMA (GPU)
  ################################
  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    restart: unless-stopped
    ports:
      - "11434:11434"
    volumes:
      - ollama_data:/root/.ollama
    environment:
      - OLLAMA_HOST=0.0.0.0:11434
      - NVIDIA_VISIBLE_DEVICES=all
      - NVIDIA_DRIVER_CAPABILITIES=compute,utility
      - TZ=Asia/Jakarta
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: ["gpu"] 

  ################################
  # 2. OPEN-WEBUI
  ################################
  open-webui:
    image: ghcr.io/open-webui/open-webui:cuda
    container_name: open-webui
    restart: unless-stopped
    depends_on:
      - ollama
    ports:
      - "3000:8080"
    environment:
      - TZ=Asia/Jakarta
      - OLLAMA_BASE_URL=http://ollama:11434
      - WEBUI_AUTH=False
      - RAG_EMBEDDING_ENGINE=ollama
      - RAG_EMBEDDING_MODEL=nomic-embed-text
    volumes:
      - openwebui_data:/app/backend/data
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: ["gpu"] 

  ################################
  # 3. N8N 1.x
  ################################
  n8n:
    image: docker.n8n.io/n8nio/n8n:1.123.9
    container_name: n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - TZ=Asia/Jakarta
      - N8N_SECURE_COOKIE=false
      - N8N_BASIC_AUTH_ACTIVE=false
      - N8N_HOST=192.168.0.173
      - N8N_PORT=5678
      - N8N_PROTOCOL=http
      - N8N_EDITOR_BASE_URL=http://192.168.0.173:5678
      - WEBHOOK_URL=http://192.168.0.173:5678
      - N8N_ENCRYPTION_KEY=ganti_dengan_kunci_panjang_acak
    volumes:
      - n8n_data:/home/node/.n8n

  ################################
  # 4. WAHA
  ################################
  waha:
    image: devlikeapro/waha:latest
    container_name: waha
    restart: unless-stopped
    depends_on:
      - n8n
    ports:
      - "3001:3000"
    environment:
      - TZ=Asia/Jakarta
      - WHATSAPP_WEBHOOK_URL=http://n8n:5678/webhook/waha-incoming
      - WHATSAPP_DEFAULT_ENGINE=WEBJS
      - WHATSAPP_API_KEY=Admin123456!
      - WHATSAPP_RESTART_ALL_SESSIONS=true
      - WAHA_DASHBOARD_USERNAME=admin
      - WAHA_DASHBOARD_PASSWORD=123456
      - WHATSAPP_SWAGGER_USERNAME=admin
      - WHATSAPP_SWAGGER_PASSWORD=123456
    volumes:
      - ./sessions:/app/.sessions
      - ./media:/app/.media 

volumes:
  ollama_data:
  openwebui_data:
  n8n_data: