🐳Docker Setup

Kallia provides comprehensive Docker support for both development and production deployments. This guide covers Docker setup, configuration, and deployment strategies based on the actual Docker configurations.

Overview

Kallia consists of two main services:

  • Core API Service: FastAPI-based document processing service

  • Playground: Chainlit-powered interactive chat interface

Each service can be deployed independently using Docker and Docker Compose.

Prerequisites

  • Docker 20.10 or higher

  • Docker Compose 2.0 or higher

  • Ollama running locally (for AI model inference)

Quick Start

1. Core API Service

Navigate to the core directory and start the service:

cd kallia/core
docker-compose up -d

The API will be available at http://localhost:8000

2. Playground Service

Navigate to the playground directory and start the service:

The playground will be available at http://localhost:8000

Core API Service

Docker Compose Configuration

The core service uses the following docker-compose.yml:

Dockerfile

The core service uses this Dockerfile:

Environment Configuration

Create a .env file in the core directory:

The .env.example file contains:

Playground Service

Docker Compose Configuration

The playground service uses the following docker-compose.yml:

Dockerfile

The playground service uses this Dockerfile:

Environment Configuration

Create a .env file in the playground directory:

The .env.example file contains:

Environment Variables

Core Configuration

  • KALLIA_PROVIDER_API_KEY: API key for the provider (set to "ollama" for local Ollama)

  • KALLIA_PROVIDER_BASE_URL: Base URL for the AI provider API

  • KALLIA_PROVIDER_MODEL: Model name to use for processing

Custom Configuration

You can modify the environment variables to use different AI providers:

Docker Hub Images

Pre-built images are available on Docker Hub:

  • Core Service: overheatsystem/kallia:0.1.6

  • Latest: overheatsystem/kallia:latest

Network Configuration

Docker Network

Both services use the default Docker network. For custom networking:

Connecting Services

If running both core and playground together:

Security Considerations

Environment Security

  • Use .env files for sensitive configuration

  • Never commit .env files to version control

  • Use Docker secrets for production deployments

  • Regularly update base images and dependencies

Network Security

  • Use custom networks to isolate services

  • Implement reverse proxy for production

  • Enable HTTPS for external access

  • Restrict container capabilities

Next Steps

Support

For Docker-related issues:

Last updated