Files
ansible/roles/docker/templates/hoarder-compose.yml.j2
T
PhilandClaude Opus 5.5 c0145dd5a2 Harden permissions, close exposed ports, and clean up tasks
- Quote file modes. Unquoted 644/755 were read as decimal, so files
  landed as 1204. Templates holding secrets are now 0640 root:docker.
- Stop publishing Authentik 9000/9443 and Karakeep 3000 (Caddy reaches
  them over the docker network), bind dir2opds to the Tailscale IP, and
  drop Caddy's unused 8448.
- Atuin login uses no_log and only runs once; the installer only runs
  when Atuin is missing.
- Make chsh, ufw-docker install, the bat symlink and Atuin dotfiles
  idempotent.
- Back up the Paperless data volume (SQLite DB), stopping Paperless
  during the backup.
- Close public sign-up on kosync and ByteStash.
- Replace hardcoded IPs and domains with variables.
- Remove teardown tasks and templates for 9 retired services.
- Fix the dockcheck comment: it auto-updates labelled containers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 21:03:54 -06:00

57 lines
1.4 KiB
Django/Jinja

version: "3.8"
services:
web:
image: ghcr.io/karakeep-app/karakeep:latest
restart: unless-stopped
volumes:
- data:/data
env_file:
- .env
extra_hosts:
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
- '{{ subdomains.bookmarks }}:{{ docker.hairpin_ip }}'
environment:
MEILI_ADDR: http://meilisearch:7700
DATA_DIR: /data
BROWSER_WEB_URL: http://chrome:9222
labels:
glance.name: Karakeep
glance.icon: si:wikibooks
glance.url: https://{{ subdomains.bookmarks }}/
glance.description: Bookmark manager
glance.id: karakeep
mag37.dockcheck.update: true
chrome:
image: gcr.io/zenika-hub/alpine-chrome:123
restart: unless-stopped
labels:
glance.name: Chrome
glance.parent: karakeep
mag37.dockcheck.update: true
command:
- --no-sandbox
- --disable-gpu
- --disable-dev-shm-usage
- --remote-debugging-address=0.0.0.0
- --remote-debugging-port=9222
- --hide-scrollbars
meilisearch:
image: getmeili/meilisearch:v1.13.3
restart: unless-stopped
labels:
glance.name: Meilisearch
glance.parent: karakeep
mag37.dockcheck.update: true
env_file:
- .env
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- meilisearch:/meili_data
volumes:
meilisearch:
data:
networks:
default:
external: true
name: {{ docker.network_name }}