Add opentelemetry-distro/exporter-otlp (pinned pair) and run opentelemetry-bootstrap at build time; wrap the sanctions command with opentelemetry-instrument and configure the SDK via OTEL_* env (traces only, OTLP/HTTP to otlp.vione.cloud). create-secrets.sh now writes the base64 OTLP auth header into .env.observability. The G10 guard test (no observability libraries in requirements) is expected to fail from here until the guard suite is retired in Phase 3. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
24 lines
551 B
Docker
24 lines
551 B
Docker
FROM python:3.12-slim
|
|
|
|
ENV PYTHONUNBUFFERED=1 \
|
|
PYTHONDONTWRITEBYTECODE=1 \
|
|
PIP_NO_CACHE_DIR=1
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends curl \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /app
|
|
|
|
COPY requirements.txt .
|
|
RUN pip install -r requirements.txt
|
|
RUN opentelemetry-bootstrap -a install
|
|
|
|
COPY common ./common
|
|
COPY services ./services
|
|
COPY db ./db
|
|
COPY scripts ./scripts
|
|
|
|
# CMD differs per service -- see docker-compose.yml.
|
|
CMD ["python", "-c", "print('no default command: set one in docker-compose.yml')"]
|