diff --git a/ai/Dockerfile b/ai/Dockerfile new file mode 100644 index 0000000..39b8eb3 --- /dev/null +++ b/ai/Dockerfile @@ -0,0 +1,23 @@ +FROM debian:13.4 + +# Install uv (Python package manager), curl, poppler-utils, and imagemagick +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + curl \ + poppler-utils \ + imagemagick && \ + rm -rf /var/lib/apt/lists/* + +# Install uv if not already present (debian:13.4 doesn't ship it) +COPY --from=ghcr.io/astral-sh/uv:latest /usr/local/bin/uv /usr/local/bin/uv +RUN uv --version + +# Verify all expected tools are available +RUN curl --version && \ + pdftotext -v 2>&1 | head -1 && \ + pdfinfo -v 2>&1 | head -1 && \ + pdftoppm -v 2>&1 | head -1 && \ + convert --version | head -1 && \ + identify --version | head -1 + +CMD ["/bin/bash"] diff --git a/ai/compose.yml b/ai/compose.yml index 1db7831..a58c5a8 100644 --- a/ai/compose.yml +++ b/ai/compose.yml @@ -129,6 +129,22 @@ services: - "303" - "26" + paperclip-db: + image: postgres:17 + container_name: paperclip-db + restart: always + environment: + - POSTGRES_PASSWORD=${PAPERCLIP_DB_PASSWORD} + healthcheck: + test: ["CMD-SHELL", "pg_isready -U postgres"] + interval: 5s + timeout: 5s + retries: 10 + volumes: + - /mnt/HoardingCow_docker_data/Paperclip/db:/var/lib/postgresql/data + networks: + - ai_backend + networks: ai_net: external: true