Add configuration for hoarder

This commit is contained in:
Thomas Kleinendorst 2025-01-04 12:12:53 +01:00
parent 9e9449c6ed
commit 3f8e820bab
8 changed files with 120 additions and 17 deletions

View file

@ -27,6 +27,7 @@
- role: changedetection - role: changedetection
- role: monitoring - role: monitoring
- role: immich - role: immich
- role: hoarder
vars: vars:
# devsec.hardening.ssh_hardening vars: # devsec.hardening.ssh_hardening vars:
ssh_client_port: 22 # Default, but duplicated here for documentation purpose. Not changed because its only accessible via LAN. ssh_client_port: 22 # Default, but duplicated here for documentation purpose. Not changed because its only accessible via LAN.

View file

@ -0,0 +1,29 @@
---
- name: Create the compose project directory
ansible.builtin.file:
path: "/home/{{ ansible_user_id }}/hoarder"
state: directory
owner: "{{ ansible_user_id }}"
mode: '0744'
- name: Create the docker-compose.yml file
ansible.builtin.template:
src: docker-compose.yml.j2
dest: "/home/{{ ansible_user_id }}/hoarder/docker-compose.yml"
owner: "{{ ansible_user_id }}"
mode: '0644'
- name: Create the .env file
ansible.builtin.template:
src: .env.j2
dest: "/home/{{ ansible_user_id }}/hoarder/.env"
owner: "{{ ansible_user_id }}"
mode: '0644'
- name: Create and start services
become: true
community.docker.docker_compose_v2:
project_src: "/home/{{ ansible_user_id }}/hoarder/"
- name: Include simple-reverse-proxy role
ansible.builtin.include_role:
name: simple-reverse-proxy
vars:
simple_reverse_proxy_internal_port: 3002
simple_reverse_proxy_internal_subdomain: local.hoarder

View file

@ -0,0 +1,8 @@
HOARDER_VERSION={{ versions.hoarder_version }}
NEXTAUTH_SECRET={{ hoarder_nextauth_secret }}
MEILI_MASTER_KEY={{ hoarder_meili_master_key }}
NEXTAUTH_URL={{ hoarder_nextauth_url }}
OPENAI_API_KEY={{ openapi_key }}
DISABLE_SIGNUPS=true
INFERENCE_TEXT_MODEL=gpt-4o-mini
INFERENCE_IMAGE_MODEL=gpt-4o-mini

View file

@ -0,0 +1,39 @@
---
services:
web:
image: ghcr.io/hoarder-app/hoarder:${HOARDER_VERSION:-release}
restart: unless-stopped
volumes:
- hoarder_data:/data
ports:
- 127.0.0.1:3002:3000
env_file:
- .env
environment:
MEILI_ADDR: http://meilisearch:7700
BROWSER_WEB_URL: http://chrome:9222
# OPENAI_API_KEY: ...
DATA_DIR: /data
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
meilisearch:
image: getmeili/meilisearch:v1.11.1
restart: unless-stopped
env_file:
- .env
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- meilisearch:/meili_data
volumes:
meilisearch:
hoarder_data:

View file

@ -0,0 +1,2 @@
---
hoarder_nextauth_url: https://hoarder.kleinendorst.info

View file

@ -0,0 +1,13 @@
$ANSIBLE_VAULT;1.1;AES256
31323864333237343132343336313236653962663262653233343465393633353736313738343631
6662386466643235396666376639616434373837313538300a626466613732623466333633643238
39613865613933356333626362326633373336313261383330633233386561323832323539663761
3538643061396231610a396230333265353861346331393461373561343034336262376431656263
31383837613866323765646261626661323563343339333832646533646166616534333065663466
65323430623461353434366366393662356261363261313637363761303034646533306165353732
62643739306237393031366531316537373231333737373763613835653130626639343563326234
31326461346334313538333433623662383434343235386536356536356461633839336431343535
37383964333537646634373163363366656530343133633061346662623530646466616366626364
33386162663234313031666637623830343835663264326263303836356364323434646265623331
64323364393964343362383636613436396539623866323865626533373032663033333139656133
65633131633562663136

View file

@ -1,18 +1,27 @@
$ANSIBLE_VAULT;1.1;AES256 $ANSIBLE_VAULT;1.1;AES256
65323465313539616564316534353439633262633863316361613032363035663834663936333633 35373831333937353462366464653434363763616462313333333630343566313735623933396338
3662626332313834353464396461653062356665373537310a643932323737646439376335616638 6165303633363362323031353431646339636435633261650a666335346237323861306231666434
34313464383138303332386261346635663162663966313361383465363261663930376262663737 64643033363630636361393763623839643965646639303563623463386164376361333734333533
3138623038643066640a393966333763366165396462393736633633353763326265393231623831 3637326237623731360a306466353262313736393363623666623361303036303365303531373138
30376537306136376462656263336638656666636132306561656634663362393361636162313538 33666238316565343166396265306638373732343734316533386637396233363366623164356561
64343063613935303066656265356636376539366166636362353236616633366165663062353232 39363630373334626233666232626434363233653639376639303034653866613136383664396461
37623362323737303537323363386630383062356235336464643734396533353563333161333261 39393064353536326337393366643162616235303362363637353330376134383866303337393335
33383663316165656461303263376639303939663231336133373432373064663865396436643963 36353664623961663731633464373433616334633061633638383531396436346436333966333662
30643265313033356362663930373632386330353162646562383835623730316534396236353230 64343434626661653534663234356637306332383831636461316339623866373630373933376463
31386161306433393663353764643636336565666435626164353861626365396339333962636337 65363734633532616265643564386166626434343632306664653466353031346531343231373337
38383865383130383035623330313435656435633137316461383365373365343031313930343133 65356461316164346136613932336134613736656634353363303334393962313837393935646162
63323739383637383263386663326436343938396432353163343738666366613037653434393262 33646636393364333161623065613433343039343365613064383963336165646134363836313038
35666332383239323134643738383139316565323337613135653538336433373130343339306539 39316530613061363032393864326137346132346132393431363033363932326436386263613230
32353662636334323130646134306434636339396239643234613261626365393138303431393866 36333037653463313332336537353663303532333930383034313962616232383461643566653333
61353832663135636334343334613135393661326336666332316236366236353037326465636462 34396166383732613330656635333635326533383238636364666530336331373333336434656235
31633133326431653837653634343934366662313831303263656462663334643165666138343766 35653133343133386336643334383532326364373837303762396162323933343932663031363461
35376631656236613036616431346163313434613465303066323961323532373136 37306535626261636232633261633663616136303534343334613365626533663838636431343435
63623162616635333463616338653035343934343562326430663739383263393163636563666239
66303362623035663965393137383934346235343166613766613365636162383931626464353161
62613338613838616430356363303537623038656666363134383738363330376437303138646334
35383361636132323630633332616338633533353433303735363366616134376164666339336161
63653236356162376561396165373637626438306466326533616639613133356338653464326661
36343066313539366235386634623933643761623362313165313930333139626431386233346337
34336563363462613832396233323765653166333835356633633834633537636238386130386438
31633838626337373431376132653439323066356262346566636166313038306161366661333239
3238643837343338616136313362303963633865616661316566

View file

@ -29,3 +29,5 @@ versions:
# Releases: https://github.com/Kleinendorst/wedding/pkgs/container/wedding # Releases: https://github.com/Kleinendorst/wedding/pkgs/container/wedding
wedding: 0.0.17 wedding: 0.0.17
cloudflared: 2024.12.2 cloudflared: 2024.12.2
# Releases: https://github.com/hoarder-app/hoarder/releases
hoarder_version: 0.20.0