Files
url_shortening_service/Dockerfile
T
westfarn 143ac7c6d0
CI / test (pull_request) Successful in 6s
Add v1 shortener: Bearer API, public 302, landing, and CI.
Standalone Django service so callers can mint links and phones get a 302.
Closes #1.
2026-08-30 06:54:32 -05:00

29 lines
583 B
Docker

FROM python:3.12-slim
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
UV_COMPILE_BYTECODE=1 \
UV_LINK_MODE=copy \
UV_PROJECT_ENVIRONMENT=/app/.venv
WORKDIR /app
RUN apt-get update \
&& apt-get install -y --no-install-recommends libpq5 \
&& rm -rf /var/lib/apt/lists/*
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
COPY pyproject.toml uv.lock ./
RUN uv sync --frozen --no-dev
COPY site ./site
COPY scripts/docker-entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
WORKDIR /app/site
EXPOSE 8000
ENTRYPOINT ["/entrypoint.sh"]