# Use an official Python runtime as a parent image FROM python:3.11-slim # Set the working directory in the container WORKDIR /app # Install uv COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /usr/local/bin/ # Copy the project files COPY pyproject.toml . COPY unraid_mcp_server.py . # Install dependencies RUN uv sync --frozen --no-dev # Make port UNRAID_MCP_PORT available to the world outside this container # Defaulting to 6970, but can be overridden by environment variable EXPOSE 6970 # Define environment variables (defaults, can be overridden at runtime) ENV UNRAID_MCP_PORT=6970 ENV UNRAID_MCP_HOST="0.0.0.0" ENV UNRAID_MCP_TRANSPORT="streamable-http" ENV UNRAID_API_URL="" ENV UNRAID_API_KEY="" ENV UNRAID_VERIFY_SSL="true" ENV UNRAID_MCP_LOG_LEVEL="INFO" # Run unraid-mcp-server.py when the container launches CMD ["uv", "run", "unraid-mcp-server"]