2025-11-03 13:17:19 +01:00
|
|
|
FROM python:3.14-slim
|
|
|
|
|
|
|
|
|
|
# Project files
|
|
|
|
|
COPY . /app
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
# Environment variables
|
|
|
|
|
ENV PYTHONPATH=/app:/app/src
|
|
|
|
|
ENV UV_INSTALL_DIR=/usr/local/bin
|
2025-11-05 11:52:08 +01:00
|
|
|
ENV NBE_NODE_API=http
|
|
|
|
|
ENV NBE_NODE_MANAGER=noop
|
2025-11-03 13:17:19 +01:00
|
|
|
|
|
|
|
|
# Package manager and dependencies
|
|
|
|
|
# RUN apt-get update && apt-get install -y curl git
|
|
|
|
|
RUN --mount=target=/var/lib/apt/lists,type=cache,sharing=locked \
|
|
|
|
|
--mount=target=/var/cache/apt,type=cache,sharing=locked \
|
|
|
|
|
rm -f /etc/apt/apt.conf.d/docker-clean \
|
|
|
|
|
&& apt-get update \
|
|
|
|
|
&& apt-get install -y curl git
|
|
|
|
|
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
|
|
|
RUN uv pip compile pyproject.toml -o requirements.txt && uv pip install --system -r requirements.txt
|
|
|
|
|
|
|
|
|
|
# Ports
|
|
|
|
|
EXPOSE 8000
|
|
|
|
|
|
|
|
|
|
# Start application
|
|
|
|
|
CMD ["python", "/app/src/main.py"]
|