Dockerfile.poller
Rama main · réplica de lectura del repositorio original.
# SPDX-License-Identifier: Apache-2.0
# Copyright 2026 Aaron K. Clark
# The Python discovery poller — the second runtime. It shares Postgres with the .NET
# API (the schema is the contract) and never serves HTTP: it fetches/scores job leads
# and writes them per tenant. Build context is the repo root (needs pyproject.toml + src/).
FROM python:3.12-slim AS runtime
WORKDIR /app
# Install the package and its runtime deps (httpx, psycopg, pyyaml) from source.
COPY pyproject.toml ./
COPY src ./src
RUN pip install --no-cache-dir .
COPY docker/poller-entrypoint.sh /usr/local/bin/poller-entrypoint.sh
RUN chmod +x /usr/local/bin/poller-entrypoint.sh \
&& groupadd --gid 10001 applytrack \
&& useradd --uid 10001 --gid applytrack --no-create-home \
--home-dir /nonexistent --shell /usr/sbin/nologin applytrack
USER applytrack
ENTRYPOINT ["/usr/local/bin/poller-entrypoint.sh"]