Files
UmbrelApps/whatsnext-atreides-services/docker-compose.yml
T
HarmenandClaude Opus 5.5 aa700078e4 Atreides Services: manifest noemt de verzamelaar
De image van v0.0.1 bevat de verzamelaar (spot per minuut van Bitvavo en
mempool.space), die standaard aan staat. De beschrijving en de
releasenotes zeiden nog dat er niet verzameld werd.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 13:57:12 +02:00

60 lines
3.5 KiB
YAML

# ═══════════════════════════════════════════════════════════════════════════════
# Atreides Services - een eigen koersdienst: legt dag en nacht koersen vast en
# levert ze straks via een API aan Atreides Assets. De verzamelaar staat
# standaard aan en haalt dus vanaf de eerste start koersen van buiten op.
#
# Eén container: de Node-server serveert de beheer-app én bezit de database. Het
# recept staat NIET in deze repo maar in `HomeGit/AtreidesServices` (de Dockerfile
# in de root daar), net als bij Atreides Assets; deze store draagt alleen de
# app-definitie.
#
# Geen `ports:` hier. De beheer-app is een web-UI en hangt volledig achter
# app_proxy. De API voor afnemers krijgt later een eigen poort, en pas DIE wordt
# eventueel gepubliceerd; daar staat nu nog niets voor.
# ═══════════════════════════════════════════════════════════════════════════════
services:
# umbrelOS genereert deze service zelf; wij vullen alleen in waar hij heen moet
# wijzen. De hostnaam heeft de vorm <app-id>_<compose-service>_1.
#
# PROXY_AUTH_ADD blijft weg, dus de inlog van umbrelOS staat ervoor: dit is de
# beheer-app en geen dienst voor een cliënt zonder browsersessie.
app_proxy:
environment:
APP_HOST: whatsnext-atreides-services_server_1
APP_PORT: 8090
server:
# NOG NIET GEPIND: er is nog geen image geduwd. Na de eerste release zet
# `node tools/release-bump.mjs whatsnext-atreides-services <versie> <digest>`
# de tag en de digest hier neer; dat script vervangt de hele regel en
# controleert anoniem bij het register dat de digest onder die tag hangt.
#
# DE TAG IS DE VERSIE VAN DE IMAGE EN NIET DIE VAN DE APP, net als bij Atreides
# Assets: `version` in umbrel-app.yml moet bij élke wijziging omhoog, ook als
# alleen dit bestand verandert.
image: sc.kamenier-hamer.nl/sysop/atreides-services:0.0.1
restart: on-failure
# Geen `user:` nodig: de image zet zelf `USER node` (uid 1000). Of die in een
# door umbrelOS aangemaakte datamap mag schrijven, is nog niet bewezen; zie
# de werkafspraken van UmbrelApps, sectie Atreides Assets.
#
# Geen healthcheck hier: die zit in de image (GET /api/health, ook zonder
# login bereikbaar).
environment:
# ZONDER DIT IS DE APP ONBEREIKBAAR. De server bindt op 127.0.0.1 zolang TLS
# én wachtwoord ontbreken, en in een container is dat de loopback van de
# container: app_proxy komt er dan niet bij. De waarschuwing over TLS bij het
# opstarten is daardoor verwacht. De netwerkgrens is hier de afwezigheid van
# een `ports:`-regel plus de proxy.
ATREIDES_SERVICES_HOST: "0.0.0.0"
# HIER STAAT MET OPZET GEEN `ATREIDES_SERVICES_PASSWORD`. De login is
# optioneel en wordt in de app zelf gezet, op de pagina Systeem. Een
# wachtwoord uit de omgeving wint van dat scherm, en dan is het alleen nog
# via dit bestand te veranderen: de les van Atreides Assets 0.1.0.
volumes:
# De datamap: db.sqlite, de minuutbestanden per maand en secrets.json. Een
# koersreeks per moment is niet opnieuw op te halen, dus dit is de map die
# in de back-up van umbrelOS hoort.
- ${APP_DATA_DIR}/data/app:/data