91 lines
2.2 KiB
YAML
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
|