Compare commits

...

6 Commits

Author SHA1 Message Date
9a9f095820 feat: add base image Dockerfile with curl, poppler-utils, imagemagick
Some checks failed
Build Hermes agent / build (pull_request) Has been cancelled
Build ollama (gfx906) / build (pull_request) Has been cancelled
PR 1 of 5 — minimal base image on debian:13.4 with:
- uv (from astral-sh/uv:latest)
- curl
- poppler-utils (pdftotext, pdfinfo, pdftoppm)
- imagemagick (convert, identify)

Verified all tools report version on build.
2026-05-20 14:27:10 -04:00
be4b1ab8c4 feat: add paperclip-db PostgreSQL 17 service to AI compose stack
Adds paperclip-db service with postgres:17 image for Paperclip agent
orchestrator database backend. Uses POSTGRES_PASSWORD from env,
persistent volume at /mnt/HoardingCow_docker_data/Paperclip/db,
and healthcheck via pg_isready.

Requires .env: PAPERCLIP_DB_PASSWORD
2026-05-20 14:26:51 -04:00
d3f2e3b7b9 Merge pull request 'feat: add Syncthing service for Hermes org-file sync' (#30) from feat/syncthing-org-sync into master
Some checks failed
Build Hermes agent / build (push) Has been cancelled
Build ollama (gfx906) / build (push) Has been cancelled
Reviewed-on: #30
2026-05-19 00:28:59 +00:00
6a44120b1a Fixed syncthing dir path
Some checks failed
Build Hermes agent / build (pull_request) Has been cancelled
Build ollama (gfx906) / build (pull_request) Has been cancelled
2026-05-18 20:25:18 -04:00
38a1451689 Merge branch 'master' into feat/syncthing-org-sync 2026-05-14 22:24:19 -04:00
8d1ae7e632 Remove the unsuported gitea action off 2026-05-13 13:11:11 -04:00
3 changed files with 43 additions and 7 deletions

23
ai/Dockerfile Normal file
View File

@@ -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"]

View File

@@ -55,9 +55,9 @@ services:
volumes: volumes:
- /mnt/HoardingCow_docker_data/Hermes/data:/opt/data - /mnt/HoardingCow_docker_data/Hermes/data:/opt/data
# Syncthing-shared org files — read-only view of user's agenda # Syncthing-shared org files — read-only view of user's agenda
- /mnt/HoardingCow_docker_data/Syncthing/org-ro:/opt/data/org-ro:ro - /mnt/HoardingCow_docker_data/Syncthing/telos-ro:/opt/data/telos-ro:ro
# Syncthing-shared inbox — write tasks here, they sync to user's laptop # Syncthing-shared inbox — write tasks here, they sync to user's laptop
- /mnt/HoardingCow_docker_data/Syncthing/org-rw:/opt/data/org-rw:rw - /mnt/HoardingCow_docker_data/Syncthing/telos-rw:/opt/data/telos-rw:rw
devices: devices:
- /dev/kfd:/dev/kfd - /dev/kfd:/dev/kfd
- /dev/dri:/dev/dri - /dev/dri:/dev/dri
@@ -80,8 +80,8 @@ services:
- TZ=America/Montreal - TZ=America/Montreal
volumes: volumes:
- /mnt/HoardingCow_docker_data/Syncthing/config:/var/syncthing/config - /mnt/HoardingCow_docker_data/Syncthing/config:/var/syncthing/config
- /mnt/HoardingCow_docker_data/Syncthing/org-ro:/org-ro - /mnt/HoardingCow_docker_data/Syncthing/telos-ro:/telos-ro
- /mnt/HoardingCow_docker_data/Syncthing/org-rw:/org-rw - /mnt/HoardingCow_docker_data/Syncthing/telos-rw:/telos-rw
networks: networks:
- ai_backend - ai_backend
- ai_net - ai_net
@@ -129,6 +129,22 @@ services:
- "303" - "303"
- "26" - "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: networks:
ai_net: ai_net:
external: true external: true

View File

@@ -8,13 +8,10 @@ services:
- USER_GID=1000 - USER_GID=1000
- GITEA__server__ROOT_URL=https://code.lazyworkhorse.net - GITEA__server__ROOT_URL=https://code.lazyworkhorse.net
- GITEA__actions__ENABLED=true - GITEA__actions__ENABLED=true
- GITEA__actions__DEFAULT_ACTIONS_URL=off
- SSH_PORT=2222 - SSH_PORT=2222
- SSH_LISTEN_PORT=2222 - SSH_LISTEN_PORT=2222
# Enable Gitea Actions (act_runner required on host) # Enable Gitea Actions (act_runner required on host)
- GITEA__actions__ENABLED=true - GITEA__actions__ENABLED=true
# Don't fetch actions from GitHub (offline mode + local only)
- GITEA__actions__DEFAULT_ACTIONS_URL=off
volumes: volumes:
- /mnt/HoardingCow_docker_data/Gitea:/data - /mnt/HoardingCow_docker_data/Gitea:/data
networks: networks: