Files
rengine/worker/Dockerfile
T

46 lines
1.1 KiB
Docker

FROM python:3.13-slim AS base
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
PYTHONPATH=/app \
C_FORCE_ROOT=1
WORKDIR /app
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
##################################################################
# Development
##################################################################
FROM base AS development
RUN apt-get update && apt-get install -y --no-install-recommends \
curl \
wget \
git \
build-essential \
&& rm -rf /var/lib/apt/lists/*
RUN curl -fsSL https://go.dev/dl/go1.25.7.linux-amd64.tar.gz | tar -C /usr/local -xzf -
ENV PATH="/usr/local/go/bin:/root/go/bin:${PATH}"
RUN go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest
COPY shared /app/shared
COPY tools /app/tools
COPY worker/pyproject.toml worker/uv.lock* ./
RUN uv sync --no-install-project
CMD ["uv", "run", "celery", "-A", "app.celery", "worker", "--loglevel=INFO"]
###################################################################
# TODO: Production
###################################################################