2026-03-01 21:52:27 +01:00
|
|
|
FROM python:3.13-slim
|
2025-12-14 19:08:01 +01:00
|
|
|
|
|
|
|
|
LABEL org.opencontainers.image.source=https://github.com/BlessedRebuS/Krawl
|
|
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
2026-01-02 13:52:51 -06:00
|
|
|
# Install gosu for dropping privileges
|
2026-03-01 21:52:27 +01:00
|
|
|
RUN apt-get update && apt-get upgrade -y && apt-get install -y --no-install-recommends gosu && \
|
2026-01-02 13:52:51 -06:00
|
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
2026-01-02 13:39:54 -06:00
|
|
|
COPY requirements.txt /app/
|
2026-03-01 21:52:27 +01:00
|
|
|
RUN pip install --no-cache-dir --upgrade pip && \
|
|
|
|
|
pip install --no-cache-dir -r requirements.txt
|
2026-01-02 13:39:54 -06:00
|
|
|
|
2025-12-14 19:08:01 +01:00
|
|
|
COPY src/ /app/src/
|
|
|
|
|
COPY wordlists.json /app/
|
2026-01-02 13:52:51 -06:00
|
|
|
COPY entrypoint.sh /app/
|
2026-03-19 20:16:35 +01:00
|
|
|
COPY start.sh /app/
|
2026-01-08 19:20:22 +01:00
|
|
|
COPY config.yaml /app/
|
2025-12-14 19:08:01 +01:00
|
|
|
|
|
|
|
|
RUN useradd -m -u 1000 krawl && \
|
2026-01-05 11:54:02 -06:00
|
|
|
mkdir -p /app/logs /app/data /app/exports && \
|
2026-01-02 13:52:51 -06:00
|
|
|
chown -R krawl:krawl /app && \
|
2026-03-19 20:16:35 +01:00
|
|
|
chmod +x /app/entrypoint.sh /app/start.sh
|
2025-12-14 19:08:01 +01:00
|
|
|
|
2026-03-19 20:16:35 +01:00
|
|
|
EXPOSE 5010
|
|
|
|
|
EXPOSE 5123
|
2025-12-14 19:08:01 +01:00
|
|
|
|
|
|
|
|
ENV PYTHONUNBUFFERED=1
|
|
|
|
|
|
2026-01-02 13:52:51 -06:00
|
|
|
ENTRYPOINT ["/app/entrypoint.sh"]
|
2026-03-19 20:16:35 +01:00
|
|
|
CMD ["/app/start.sh"]
|