Dale-Kurt Murray 125a71fc91 Initial commit: Docker-based local LLM environment
This commit sets up a complete Docker Compose environment for running local AI and LLM services:

Features:
- AnythingLLM with Qdrant vector database integration
- Flowise AI workflow automation
- Open WebUI for Ollama interaction
- n8n workflow automation platform
- Qdrant vector database
- PostgreSQL database for n8n

Configuration:
- Environment variables for all services
- Support for both native and containerized Ollama
- Proper data persistence with Docker volumes
- Network configuration for inter-service communication

Documentation:
- Comprehensive README with setup instructions
- Troubleshooting guidance
- Service descriptions and port mappings

Directory structure:
- Organized directories for each service
- .gitignore configured to track directories but ignore contents
- Sample environment configuration
2025-03-10 22:40:34 -04:00
2025-03-10 22:35:45 -04:00
2025-03-10 22:35:45 -04:00
2025-03-10 22:35:45 -04:00

Docker Local AI LLM Environment

This repository contains a Docker Compose setup for running a local AI and automation environment with multiple services.

Services

Flowise

AnythingLLM

  • Document management and AI interaction platform
  • Port: 3002
  • Web interface: http://localhost:3002
  • Uses Qdrant as vector database
  • Connects to Ollama for LLM capabilities

Open WebUI

n8n

  • Workflow automation platform
  • Port: 5678
  • Web interface: http://localhost:5678
  • Includes automatic import of workflows and credentials from backup directory

Qdrant

  • Vector database for AI applications
  • Port: 6333
  • API endpoint: http://localhost:6333
  • Used by AnythingLLM for document embeddings

PostgreSQL

  • Database used by n8n
  • Port: 5432

Prerequisites

  • Docker and Docker Compose installed on your system
  • Basic understanding of Docker containers and networking
  • Ollama installed locally (or optionally run as a container by uncommenting the Ollama service in docker-compose.yml)

Setup Instructions

  1. Clone this repository:

    git clone https://github.com/yourusername/docker-local-ai-llm.git
    cd docker-local-ai-llm
    
  2. Create a .env file based on the provided .env.sample file:

    cp .env.sample .env
    
  3. Modify the .env file with your preferred credentials and secrets.

  4. Ollama Configuration:

    • By default, the setup is configured to use a locally installed Ollama instance
    • If you want to run Ollama as a container, uncomment the Ollama service in docker-compose.yml and update the OLLAMA_BASE_PATH and EMBEDDING_BASE_PATH in .env to use http://ollama:11434
  5. Start the services:

    docker-compose up -d
    
  6. Access the services through their respective ports:

Data Persistence

The following Docker volumes are used for data persistence:

  • n8n_storage: n8n data
  • postgres_storage: PostgreSQL database
  • qdrant_storage: Qdrant vector database
  • open-webui: Open WebUI data
  • flowise: Flowise data
  • anythingllm_storage: AnythingLLM data
  • ollama_storage: Ollama data (when using containerized Ollama)

Network Configuration

All services are connected to the ai-network Docker network for internal communication.

Customization

You can customize the services by modifying the docker-compose.yml and .env files according to your needs.

AnythingLLM Configuration

AnythingLLM is configured to use:

  • Qdrant as the vector database
  • Ollama for LLM capabilities and embeddings
  • The configuration can be adjusted in the .env file

Troubleshooting

If you encounter any issues:

  1. Check the logs of the specific service:

    docker-compose logs [service-name]
    
  2. Ensure all required ports are available on your host system.

  3. Verify that the .env file contains all necessary variables.

  4. If using native Ollama, ensure it's running on your host machine:

    ollama serve
    
  5. If you're having connection issues between containers and your host machine, check that the extra_hosts configuration is correctly set in docker-compose.yml.

License

[Specify your license here]

Description
No description provided
Readme 5.1 MiB