Files
gps-denied-onboard/docker/operator-orchestrator.Dockerfile
T
Oleksandr Bezdieniezhnykh bf13549b32
ci/woodpecker/push/02-build-push Pipeline failed
[autodev] Update configuration and documentation for cycle-1
- Enhanced `.env.example` with detailed CMake build flags and replay-mode strategy flags for development and CI environments.
- Updated `.gitignore` to include a new deploy rollback bookmark.
- Revised `_docs/_autodev_state.md` to reflect the current task status and steps.
- Added new lessons to `_docs/LESSONS.md` regarding testing and architectural improvements.
- Documented changes in `_docs/02_document/deployment/ci_cd_pipeline.md` to reflect the relaxed OpenCV version pin.
- Updated test data documentation in `_docs/02_document/tests/test-data.md` to clarify fixture usage and paths.

This commit continues the cycle-1 documentation sync and addresses various configuration updates for improved clarity and functionality.
2026-05-20 08:05:35 +03:00

28 lines
1.0 KiB
Docker

# Operator-orchestrator image — installs C11 + C12 + healthcheck.
# Per `_docs/02_document/deployment/containerization.md`.
FROM python:3.10-slim AS runtime
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
libpq5 \
curl \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /opt/gps-denied
COPY pyproject.toml ./
COPY src ./src
# Base image ships pip 23.0.1, which refuses pre-release versions for
# `gtsam<5.0,>=4.2` even though `4.3a0` is the only wheel PyPI publishes
# for aarch64. Upgrade pip first so its pre-release fallback kicks in.
# Same rationale as tests/e2e/Dockerfile.jetson lines 99-104.
RUN pip install --no-cache-dir --upgrade pip \
&& pip install --no-cache-dir -e ".[dev]"
ENV PYTHONPATH="/opt/gps-denied/src"
HEALTHCHECK --interval=10s --timeout=3s --start-period=10s --retries=3 \
CMD python3 -m gps_denied_onboard.healthcheck || exit 1
ENTRYPOINT ["python3", "-m", "gps_denied_onboard.runtime_root"]