Fetch ML - Secure Machine Learning Platform¶
A secure, containerized platform for running machine learning experiments with role-based access control and comprehensive audit trails.
Quick Start¶
New to the project? Start here!
# Clone the repository
git clone https://github.com/your-username/fetch_ml.git
cd fetch_ml
# Quick setup (builds everything, creates test user)
make quick-start
# Create your API key
./bin/user_manager --config configs/config_dev.yaml --cmd generate-key --username your_name --role data_scientist
# Run your first experiment
./bin/worker --config configs/config_dev.yaml --api-key YOUR_GENERATED_KEY
Quick Navigation¶
๐ Getting Started¶
- Getting Started Guide - Complete setup instructions
- Simple Install - Quick installation guide
๐ Security & Authentication¶
- Security Overview - Security best practices
- API Key Process - Generate and manage API keys
- User Permissions - Role-based access control
โ๏ธ Configuration¶
- Environment Variables - Configuration options
- Smart Defaults - Default configuration settings
๐ ๏ธ Development¶
- Architecture - System architecture and design
- CLI Reference - Command-line interface documentation
- Testing Guide - Testing procedures and guidelines
- Queue System - Job queue implementation
๐ญ Production Deployment¶
- Deployment Guide - Production deployment instructions
- Production Monitoring - Monitoring and observability
- Operations Guide - Production operations
Features¶
- ๐ Secure Authentication - RBAC with API keys, roles, and permissions
- ๐ณ Containerized - Podman-based secure execution environments
- ๐๏ธ Database Storage - SQLite backend for user management (optional)
- ๐ Audit Trail - Complete logging of all actions
- ๐ Production Ready - Security audits, systemd services, log rotation
Available Commands¶
# Core commands
make help # See all available commands
make build # Build all binaries
make test-unit # Run tests
# User management
./bin/user_manager --config configs/config_dev.yaml --cmd generate-key --username new_user --role data_scientist
./bin/user_manager --config configs/config_dev.yaml --cmd list-users
# Run services
./bin/worker --config configs/config_dev.yaml --api-key YOUR_KEY
./bin/tui --config configs/config_dev.yaml
./bin/data_manager --config configs/config_dev.yaml
Need Help?¶
- ๐ Documentation: Use the navigation menu on the left
- โก Quick help:
make help - ๐งช Tests:
make test-unit
Happy ML experimenting!