# transit — one image, two entrypoints: the always-on departures API (server.py,
# the default CMD) and the weekly GTFS refresh (sync_gtfs.py, run via
# `docker compose run --rm transit-sync` from a systemd timer, same two-entrypoint-
# one-image shape as nothing else in this repo needs, but the straightforward one).
FROM python:3.11-slim

ENV PYTHONUNBUFFERED=1 \
    PYTHONDONTWRITEBYTECODE=1

WORKDIR /app

# stdlib only (csv, zipfile, sqlite3, http.server, urllib) — no requirements.txt.
COPY server.py sync_gtfs.py ./

RUN mkdir -p /data

CMD ["python", "server.py"]
