Files
venus/dbus-generator-ramp/Dockerfile
dev 9756538f16 Initial commit: Venus OS boat addons monorepo
Organizes 11 projects for Cerbo GX/Venus OS into a single repository:
- axiom-nmea: Raymarine LightHouse protocol decoder
- dbus-generator-ramp: Generator current ramp controller
- dbus-lightning: Blitzortung lightning monitor
- dbus-meteoblue-forecast: Meteoblue weather forecast
- dbus-no-foreign-land: noforeignland.com tracking
- dbus-tides: Tide prediction from depth + harmonics
- dbus-vrm-history: VRM cloud history proxy
- dbus-windy-station: Windy.com weather upload
- mfd-custom-app: MFD app deployment package
- venus-html5-app: Custom Victron HTML5 app fork
- watermaker: Watermaker PLC control UI

Adds root README, .gitignore, project template, and per-project
.gitignore files. Sensitive config files excluded via .gitignore
with .example templates provided.

Made-with: Cursor
2026-03-16 17:04:16 +00:00

48 lines
1.1 KiB
Docker

# Dockerfile for Generator Current Ramp Controller Development
#
# This provides a development environment with D-Bus support for testing.
# Note: Full integration testing requires a real Venus OS device.
#
# Usage:
# docker-compose build
# docker-compose run --rm dev python -m pytest tests/
# docker-compose run --rm dev python overload_detector.py # Run unit tests
#
FROM python:3.11-slim
# Install system dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
dbus \
libdbus-1-dev \
libdbus-glib-1-dev \
libgirepository1.0-dev \
gcc \
pkg-config \
python3-gi \
python3-gi-cairo \
gir1.2-glib-2.0 \
&& rm -rf /var/lib/apt/lists/*
# Install Python dependencies
RUN pip install --no-cache-dir \
dbus-python \
PyGObject \
numpy \
pytest
# Create working directory
WORKDIR /app
# Copy application code
COPY . /app/
# Create ext directory for velib_python (will be mounted or mocked)
RUN mkdir -p /app/ext/velib_python
# Set Python path
ENV PYTHONPATH="/app:/app/ext/velib_python"
# Default command: run tests
CMD ["python", "-m", "pytest", "-v"]