Files
KeepItGoingServer/docker-compose.yml
T
Keith SmithandClaude Sonnet 4.5 6a0b35c39c Initial commit: KeepItGoing task management server
Features:
- Django-based REST API with web interface
- Task management with tags, priorities, and due dates
- Time tracking with start/stop timers
- Subtasks support
- Task filtering (all, today, upcoming, overdue, completed)
- Tag-based organization with color coding
- Sorting by due date and priority
- Auto-assign tags when filtering
- Responsive 3-pane layout (sidebar, task list, detail panel)
- Task sharing between users
- Mobile-responsive design with dark mode support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-18 17:41:29 -07:00

95 lines
2.3 KiB
YAML

# KeepItGoing - Self-Hosted Docker Compose Configuration
# Usage: docker-compose up -d
version: '3.8'
services:
db:
image: postgres:16-alpine
volumes:
- postgres_data:/var/lib/postgresql/data
environment:
POSTGRES_DB: keepitgoing
POSTGRES_USER: keepitgoing
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U keepitgoing"]
interval: 5s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
volumes:
- redis_data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 5s
retries: 5
web:
build: .
ports:
- "8000:8000"
environment:
DJANGO_ENV: selfhosted
SECRET_KEY: ${SECRET_KEY:-change-this-in-production}
ALLOWED_HOSTS: ${ALLOWED_HOSTS:-localhost,127.0.0.1}
POSTGRES_DB: keepitgoing
POSTGRES_USER: keepitgoing
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing}
POSTGRES_HOST: db
POSTGRES_PORT: 5432
REDIS_URL: redis://redis:6379/0
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
volumes:
- static_files:/app/staticfiles
- media_files:/app/media
celery:
build: .
command: celery -A config worker -l info
environment:
DJANGO_ENV: selfhosted
SECRET_KEY: ${SECRET_KEY:-change-this-in-production}
POSTGRES_DB: keepitgoing
POSTGRES_USER: keepitgoing
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing}
POSTGRES_HOST: db
POSTGRES_PORT: 5432
REDIS_URL: redis://redis:6379/0
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
celery-beat:
build: .
command: celery -A config beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler
environment:
DJANGO_ENV: selfhosted
SECRET_KEY: ${SECRET_KEY:-change-this-in-production}
POSTGRES_DB: keepitgoing
POSTGRES_USER: keepitgoing
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing}
POSTGRES_HOST: db
POSTGRES_PORT: 5432
REDIS_URL: redis://redis:6379/0
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
volumes:
postgres_data:
redis_data:
static_files:
media_files: