Files
danbooru-mcp/Dockerfile.prebuilt
Aodhan Collins 08c6e14616 Initial commit
2026-03-02 23:29:58 +00:00

37 lines
1.1 KiB
Docker

# syntax=docker/dockerfile:1
# ---------------------------------------------------------------------------
# danbooru-mcp — Fast Dockerfile (uses a pre-built db/tags.db)
#
# Use this when you already have db/tags.db built locally via:
# python scripts/scrape_tags.py
#
# Build:
# docker build -f Dockerfile.prebuilt -t danbooru-mcp .
#
# Run (MCP stdio):
# docker run --rm -i danbooru-mcp
# ---------------------------------------------------------------------------
ARG PYTHON_VERSION=3.12
FROM python:${PYTHON_VERSION}-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY src/ src/
COPY db/tags.db db/tags.db
ENV DANBOORU_TAGS_DB=/app/db/tags.db
RUN useradd --no-create-home --shell /bin/false mcpuser && \
chown -R mcpuser:mcpuser /app
USER mcpuser
HEALTHCHECK --interval=30s --timeout=5s --start-period=5s --retries=3 \
CMD python -c "import sqlite3; c=sqlite3.connect('/app/db/tags.db'); print(c.execute('SELECT COUNT(*) FROM tags').fetchone()[0]); c.close()"
ENTRYPOINT ["python", "src/server.py"]