Implement configurable database backends (SQLite/JSON) with unified memory management, automated migration, Docker support, and privacy controls. Maintains full backward compatibility while enabling future PostgreSQL/ChromaDB.
41 lines
No EOL
1 KiB
YAML
41 lines
No EOL
1 KiB
YAML
# docker-compose.yml example for SQLite (internal database)
|
|
version: '3.8'
|
|
services:
|
|
deltabot:
|
|
build: .
|
|
environment:
|
|
- DATABASE_BACKEND=sqlite
|
|
- SQLITE_PATH=data/deltabot.db # Internal to container
|
|
- MEMORY_ENABLED=true
|
|
volumes:
|
|
# Optional: Mount data directory if you want persistence across container recreations
|
|
- ./bot-data:/app/src/data
|
|
# Mount config if you want to edit settings externally
|
|
- ./src/settings.yml:/app/src/settings.yml
|
|
restart: unless-stopped
|
|
|
|
---
|
|
|
|
# docker-compose.yml example for external databases (future)
|
|
version: '3.8'
|
|
services:
|
|
deltabot:
|
|
build: .
|
|
environment:
|
|
- DATABASE_BACKEND=postgresql
|
|
- POSTGRES_URL=postgresql://user:pass@postgres:5432/deltabot
|
|
depends_on:
|
|
- postgres
|
|
restart: unless-stopped
|
|
|
|
postgres:
|
|
image: postgres:13
|
|
environment:
|
|
POSTGRES_DB: deltabot
|
|
POSTGRES_USER: deltauser
|
|
POSTGRES_PASSWORD: deltapass
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
|
|
volumes:
|
|
postgres_data: |