Prejsť na obsah
Accquix Register
Esc
↑↓navigácia↵otvoriť⌘Jnáhľad
Na tejto stránke

Docker compose

Referenčné nasadenie, jeho služby, tajomstvá a nastavenia.

deploy/compose/compose.yaml je referenčné nasadenie:

Služba Spúšťa Životný cyklus
postgres PostgreSQL 18 Beží trvalo, s kontrolou zdravia
migrate accquix-register migrate Spustí sa raz po tom, čo je PostgreSQL pripravený, skončí s kódom 0
sync accquix-register sync --every 1h Beží trvalo; jeden prechod za hodinu
serve accquix-register serve Beží trvalo; API na porte 8080

sync a serve sa spustia až po úspešnom migrate. API je pripravené, keď prvá synchronizácia zverejní všetky zdroje a potvrdíte námietky inštalácie: suppress --init-empty na novej, suppress --restore na znova zostavenej (pozrite Databáza).

Z vydania

Každé vydanie obsahuje accquix-register-deploy_<verzia>.tar.gz s týmto nasadením, variantom pre PaaS a demom, každé s obrazom danej verzie. Zdrojový kód nepotrebujete:

curl -fsSLO https://github.com/accquix/register/releases/download/v<verzia>/accquix-register-deploy_<verzia>.tar.gz
tar -xzf accquix-register-deploy_<verzia>.tar.gz && cd accquix-register-deploy_<verzia>/compose
./make-secrets.sh && docker compose up -d

Archív overte podľa checksums.txt toho istého vydania. Pri aktualizácii rozbaľte archív novej verzie vedľa starého, skopírujte do neho adresár secrets/ a spustite docker compose up -d z nového adresára: najprv sa spustí migrate.

Tajomstvá

Žiadne predvolené prihlasovacie údaje neexistujú. make-secrets.sh vytvorí súbory v secrets/. Každý proces má vlastnú databázovú rolu a dostane len svoje tajomstvo: migrate vlastní schému, sync zapisuje zrkadlo, operator mení námietky, serve môže len čítať zverejnené dáta. Roly sa vytvoria pri prvom štarte PostgreSQL; žiadny proces registra sa nepripája ako superpoužívateľ.

  • deploy/compose/
    • compose.yaml
    • make-secrets.sh
    • secrets/
      • postgres_password (superpoužívateľ: pre vás, nikdy pre register)
      • migrate_password, sync_password, operator_password, api_password
      • migrate_database_url
      • sync_database_url
      • operator_database_url
      • database_url (rola API)
      • api_keys

Priečinok je súkromný (práva 0700) a súbory v ňom sú čitateľné (0644). Compose ich pripojí tak, ako sú, a kontajnery nebežia pod vaším používateľom: register beží ako uid 65532. Ak súbory zapisujete sami, nastavte rovnaké práva, inak register skončí s permission denied na /run/secrets/....

Nastavenia

Premenná Predvolené Význam
REGISTER_PUBLISH 127.0.0.1:8080 Kde sa API zverejní na hostiteľovi. 0.0.0.0:8080 použite len za vlastným TLS proxy.
REGISTER_SYNC_EVERY 1h Interval medzi prechodmi synchronizácie (najmenej 1m).
REGISTER_SEARCH_FUZZY true Približné vyhľadávanie zapnuté alebo vypnuté.
REGISTER_MCP false MCP endpoint pre AI agentov zapnutý alebo vypnutý.
REGISTER_LOG_LEVEL info debug, info, warn alebo error.
REGISTER_IMAGE accquix-register:local Použiť vydaný obraz namiesto zostavenia zo zdrojového kódu.

Ostatné premenné sú v Konfigurácii.

Bežné úlohy

docker compose logs -f sync                       # sledovať synchronizáciu
docker compose exec serve accquix-register version
docker compose run --rm sync sync --source fs     # jeden prechod navyše pre zoznamy FS
docker compose down                               # zastaviť; dáta zostanú vo zväzku pgdata
docker compose run --rm operator suppress --init-empty             # raz, na novej inštalácii
docker compose run --rm operator suppress --subject 99900004 --reason "tiket 123"
docker compose run --rm operator suppress --list
docker compose run --rm -v "$PWD/backup:/backup" operator suppress --export --output /backup/objections.tsv
docker compose down -v                            # zastaviť a zmazať dáta: najprv exportujte námietky

operator sa príkazom docker compose up nespúšťa; vykoná jeden príkaz suppress a skončí. Priečinok na zálohu musí byť zapisovateľný pre uid 65532.

Prechod zo schémy s jednou rolou

Nasadenie vytvorené pred oddelením rolí používalo pre každý proces jedného superpoužívateľa. Prechod so zachovaním dát, námietok a API kľúčov:

docker compose down            # zväzok pgdata zostane
./make-secrets.sh --upgrade    # pridá nové súbory s tajomstvami; starú URL superpoužívateľa odloží
./upgrade-roles.sh             # vytvorí roly a odovzdá databázu role register_migrate
docker compose up -d