Why use Docker?
- Consistent environments - Same runtime across dev, staging, and production
- Fast onboarding - Get started in 5 minutes instead of 2 hours
- CI/CD ready - Drop-in containers for GitHub Actions, GitLab CI, Jenkins
- Serverless compatible - Deploy to AWS Lambda, Google Cloud Run, Azure Functions
- Multi-platform - Supports both amd64 and arm64 architectures
Quick Start
Available Images
Python SDK
TypeScript SDK
All images support both amd64 (Intel/AMD) and arm64 (Apple Silicon, AWS Graviton) architectures.
Image Variants Explained
Production
Optimized for production deployments with minimal size and maximum security. Features:- Multi-stage build for smaller image size
- Non-root user execution
- Production dependencies only
- No development tools
- Production deployments
- Serverless functions (Lambda, Cloud Run)
- Container orchestration (Kubernetes, ECS)
- CI/CD test runners
Development
Includes development tools for local development and testing. Features:- All production features
- Development tools (pytest, mypy, black, eslint, typescript)
- Git and vim for editing
- VS Code dev container support
- Local development
- VS Code dev containers
- Testing and debugging
- CI/CD with linting/type checking
Alpine (Python only)
Minimal production image based on Alpine Linux. Features:- Smallest image size (~530MB)
- Alpine Linux base
- Full SDK functionality
- Production-ready
- Size-constrained deployments
- Edge computing
- IoT devices
- Cost optimization (faster pulls)
Jupyter (Python only)
Interactive development environment with Jupyter Lab. Features:- Jupyter Lab pre-installed
- Data science tools (pandas, numpy)
- Port 8888 exposed
- Notebook examples included
- Interactive experimentation
- Data analysis
- Prototyping
- Training and demos
Usage Examples
Run Your Script
Mount your code and run it in a container.Interactive Shell
Start an interactive Python or Node.js shell.Jupyter Notebook
Start Jupyter Lab for interactive development.Development Environment
Start a development container with all tools.Docker Compose
Create adocker-compose.yml file for easier management.
CI/CD Integration
GitHub Actions
GitLab CI
Environment Variables
All TealTiger Docker images support these environment variables:Security Best Practices
Non-Root User
All images run as non-root user for security.Resource Limits
Limit CPU and memory usage.Read-Only Filesystem
Run with read-only filesystem for extra security.Secrets Management
Never hardcode secrets in images. Use environment variables or secret managers.VS Code Dev Containers
Use TealTiger images with VS Code dev containers for consistent development environments.Setup
- Install the Dev Containers extension in VS Code
- Create
.devcontainer/devcontainer.json:
- Open Command Palette (
Ctrl+Shift+P) - Select Dev Containers: Reopen in Container
Building Locally
Build images locally for customization or testing.Troubleshooting
Image Pull Fails
If GHCR is unavailable, try Docker Hub:Permission Denied
Run as your current user:Import Errors
Verify the SDK is installed:Slow Builds
Use Docker BuildKit for faster builds:Performance
Image Sizes
Build Times
- Cold cache: 2-10 minutes
- Warm cache: 1-3 minutes
- Container start:
<2 seconds
Pull Times
- Fast connection (100 Mbps): 10-30 seconds
- Average connection (25 Mbps): 30-90 seconds
- Slow connection (5 Mbps): 2-5 minutes
Governance Sidecar (v1.2)
New in v1.2.0. The governance sidecar wraps TealEngine v1.2 as a language-agnostic HTTP API. Any agent — Go, Rust, Java, Python, or TypeScript — can call the sidecar over HTTP to get governance decisions without importing the SDK.
Sidecar Quick Start
Sidecar Endpoints
The sidecar exposes 6 HTTP endpoints:POST /evaluate
Evaluate a request against the configured policy. Returns a full v1.2 Decision.POST /validate
Validate a Decision object against the TEEC evidence contract.POST /scan
Scan content for secrets. Returns findings and a governance action.Sidecar Environment Variables
Mounting Policy Files
Mount your policy JSON files into the sidecar container:Docker Compose with Sidecar
Run the governance sidecar alongside your application:Sidecar Health Checks
The sidecar provides two health endpoints for container orchestration:GET /health— Liveness probe. Returns200with status, version, mode, and uptime.GET /ready— Readiness probe. Returns200when the engine is initialized and ready to accept requests.
Calling the Sidecar from Any Language
The sidecar is language-agnostic. Here are examples in different languages:Next Steps
Quickstart
Get started with TealTiger in 10 minutes
CI/CD Examples
Integrate TealTiger into your CI/CD pipeline
Kubernetes
Deploy TealTiger on Kubernetes
Serverless
Run TealTiger on AWS Lambda, Cloud Run, Azure Functions
Support
- GitHub Issues: Python | TypeScript
- Docker Hub: Python | TypeScript
- GHCR: Python | TypeScript
- Email: [email protected]

