koopa-admin-log/configs/taler-hacktivism/README.md
Hernâni Marques 54ebdb7d7a
configs: rename dirs to match live koopa containers
Reflect host naming in git paths:
- configs/taler-hacktivism/ (was taler-merchant) → container taler-hacktivism
- configs/taler-hacktivism-bank/ (was taler-bank) → container …-bank,
  image taler-hacktivism-banking:live
- configs/taler-exchange-ansible/ already matches …-exchange-ansible
- configs/taler-exchange/ = conf inside that exchange container

Update LIVE.md, README, ports/refs. No secret values.
2026-07-10 16:02:52 +02:00

2.9 KiB
Raw Permalink Blame History

taler-merchant (container taler-hacktivism)

Image: localhost/taler-hacktivism-live:landing
Publish: 9010/tcp only
Labels: org.hacktivism.service=taler-merchant, host_port=9010, site=taler.hacktivism.ch

Config layout (same pattern as exchange)

Path in container Mirror in this dir
taler-merchant.conf includes documented in taler-merchant.conf.includes.txt
overrides.conf tooling — do not edit (not mirrored)
merchant-overrides.conf merchant-overrides.conf
conf.d/merchant.conf conf.d-merchant.conf
nginx sites-available/taler-merchant nginx-taler-merchant.conf

Secrets (secrets/*.secret.conf, SMTP password) are not mirrored.

Manual start (merchant model)

Path User Role
/root/start_base_services_for_taler.sh root logs, SMS env, postgres → shell as taler-merchant-httpd
/usr/local/bin/start_merchant.sh taler-merchant-httpd start / --restart httpd + helpers
/usr/local/bin/check_merchant-health.sh any health (socket + nginx)

Also under /usr/local/bin/: email/SMS helpers, stats--merchant-payments.sh.
Certbot loop: /root/scripts/certbot_renew.sh (started from base script).

Git scripts: scripts/taler-merchant/.

Site settings (overrides)

  • Default currency: CHF ([taler] / [merchant])
  • Exchanges (multi-currency):
    • CHF → exchange.taler-ops.ch (package default [merchant-exchange-chf] in tops.conf — do not redeclare as merchant-exchange-tops)
    • GOA → exchange.hacktivism.ch ([merchant-exchange-goa] in merchant-overrides.conf)
  • SERVE: unix socket → nginx :9010 SSL → Caddy :9001
  • Self-provisioning: YES; no mandatory TAN (SMS off)
  • Terms: TERMS_ETAG = merchant-tos-dual-v0 — short dual-currency notice (GOA explorational + CHF real). Sources in terms-src/; install with scripts/taler-merchant/install_dual_terms.sh inside the container, then restart taler-merchant-httpd. Public: https://taler.hacktivism.ch/terms

Wire status is per account × exchange: an x-taler-bank GOA payto shows ready for hacktivism and unsupported for taler-ops (expected). CHF/IBAN accounts use taler-ops.

Container → public exchange (pasta)

Inside pasta, exchange.hacktivism.ch must not resolve to 127.0.0.1 (merchant nginx self-signed). Pin public A in container /etc/hosts:

212.51.151.254 exchange.hacktivism.ch bank.hacktivism.ch taler.hacktivism.ch

After conf/hosts changes: taler-merchant-exchangekeyupdate -t and taler-merchant-kyccheck -t.## Ports

Port Role
9010 nginx TLS in container (podman)
unix sock taler-merchant-httpd

Demo instance (2026-07-09)

Self-provisioned shop goa-demo-cp4zqk, bank account same username, payto linked, seed GOA:5000.

Details + credential paths: demo-instance-goa-demo-cp4zqk.md.