mirror of
https://github.com/eduard256/Strix
synced 2026-04-21 21:47:47 +00:00
- Multi-stage Dockerfile (Alpine base, ~174MB) - All runtime dependencies: ffmpeg, ffprobe, ca-certificates, tzdata, wget - Camera database included in image (17MB) - Security: non-root user (strix:1000) - Healthcheck on /api/v1/health - docker-compose.yml for simple deployment - docker-compose.full.yml with go2rtc and Frigate integration - GitHub Actions workflow for automated multi-arch builds (amd64, arm64) - Auto-publish to Docker Hub (eduard256/strix) - DOCKER.md documentation
56 lines
1.3 KiB
YAML
56 lines
1.3 KiB
YAML
version: '3'
|
|
|
|
services:
|
|
strix:
|
|
image: eduard256/strix:latest
|
|
# Or build locally:
|
|
# build: .
|
|
container_name: strix
|
|
restart: unless-stopped
|
|
|
|
ports:
|
|
- "4567:4567"
|
|
|
|
environment:
|
|
# Logging configuration
|
|
- STRIX_LOG_LEVEL=info
|
|
- STRIX_LOG_FORMAT=json
|
|
|
|
# Optional: Override default port
|
|
# - STRIX_API_LISTEN=:4567
|
|
|
|
# Optional: Custom data path
|
|
# - STRIX_DATA_PATH=/app/data
|
|
|
|
# volumes:
|
|
# Optional: Mount custom configuration
|
|
# - ./strix.yaml:/app/strix.yaml:ro
|
|
|
|
# Optional: Mount custom camera database
|
|
# - ./data:/app/data:ro
|
|
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:4567/api/v1/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
# Optional: Resource limits
|
|
# deploy:
|
|
# resources:
|
|
# limits:
|
|
# cpus: '1.0'
|
|
# memory: 512M
|
|
# reservations:
|
|
# cpus: '0.5'
|
|
# memory: 256M
|
|
|
|
# Usage:
|
|
# 1. Start: docker-compose up -d
|
|
# 2. View logs: docker-compose logs -f strix
|
|
# 3. Stop: docker-compose down
|
|
# 4. Restart: docker-compose restart strix
|
|
#
|
|
# Access WebUI: http://localhost:4567
|
|
# Access API: http://localhost:4567/api/v1/health
|