mirror of
https://github.com/jorijn/meshcore-stats.git
synced 2026-07-06 01:31:22 +02:00
feat: add Docker containerization with GitHub Actions CI/CD
- Multi-stage Dockerfile with Python 3.12 + Ofelia scheduler - docker-compose.yml for production (ghcr.io image) - docker-compose.development.yml for local builds - GitHub Actions workflow for multi-arch builds (amd64/arm64) - Security hardening: non-root user, cap_drop, read_only filesystem - Trivy vulnerability scanning and SBOM generation - Nightly rebuilds for OS security patches 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# MeshCore Stats - Development Override
|
||||
#
|
||||
# Use this file for local development with live code changes.
|
||||
#
|
||||
# Usage:
|
||||
# docker compose -f docker-compose.yml -f docker-compose.development.yml up --build
|
||||
#
|
||||
# This override:
|
||||
# - Builds the image locally instead of pulling from ghcr.io
|
||||
# - Mounts src/ and scripts/ for live code changes (no rebuild needed)
|
||||
|
||||
services:
|
||||
meshcore-stats:
|
||||
# Build locally instead of using published image
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
|
||||
# Remove the image reference (use built image)
|
||||
image: meshcore-stats:development
|
||||
|
||||
# Mount source code for live development
|
||||
# Changes to Python files take effect immediately (no rebuild needed)
|
||||
volumes:
|
||||
- ./data/state:/data/state
|
||||
- output_data:/out
|
||||
# Development mounts (read-only to prevent accidental writes)
|
||||
- ./src:/app/src:ro
|
||||
- ./scripts:/app/scripts:ro
|
||||
Reference in New Issue
Block a user