homelab/files/docker/hoarder/docker-stack.yaml
2025-02-28 09:32:15 -03:00

91 lines
2.2 KiB
YAML

services:
web:
image: ghcr.io/hoarder-app/hoarder:release
restart: unless-stopped
dns:
- 1.1.1.1
networks:
- default
- reverse_proxy
volumes:
- hoarder:/data
env_file:
- .env
environment:
MEILI_ADDR: http://tasks.meilisearch:7700
BROWSER_WEB_URL: http://tasks.chrome:9222
DATA_DIR: /data # DON'T CHANGE THIS
deploy:
rollback_config:
failure_action: continue
update_config:
delay: 2s
failure_action: rollback
order: start-first
placement:
constraints:
- node.labels.services_kind==${SERVICE_KIND:-common}
labels:
- traefik.enable=true
- traefik.http.routers.hoarder.rule=Host(`hoarder.alecodes.page`)
- traefik.http.services.hoarder.loadbalancer.server.port=3000
chrome:
image: gcr.io/zenika-hub/alpine-chrome:123
restart: unless-stopped
command:
- --no-sandbox
- --disable-gpu
- --disable-dev-shm-usage
- --remote-debugging-address=0.0.0.0
- --remote-debugging-port=9222
- --hide-scrollbars
deploy:
rollback_config:
failure_action: continue
update_config:
delay: 2s
failure_action: rollback
order: start-first
placement:
constraints:
- node.labels.services_kind==${SERVICE_KIND:-common}
meilisearch:
image: getmeili/meilisearch:v1.11.1
restart: unless-stopped
env_file:
- .env
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- meilisearch:/meili_data
deploy:
rollback_config:
failure_action: continue
update_config:
delay: 2s
failure_action: rollback
order: start-first
placement:
constraints:
- node.labels.services_kind==${SERVICE_KIND:-common}
volumes:
hoarder:
driver: rclone
driver_opts:
remote: 'homelab-s3:docker-volume-hoarder'
allow_other: 'true'
vfs_cache_mode: full
poll_interval: 0
meilisearch:
driver: rclone
driver_opts:
remote: 'homelab-s3:docker-volume-meilisearch'
allow_other: 'true'
vfs_cache_mode: full
poll_interval: 0
networks:
reverse_proxy:
external: true