51 lines
2.8 KiB
Markdown
51 lines
2.8 KiB
Markdown
# Lab local on koopa (parallel to live)
|
||
|
||
Does **not** touch live GOA (`taler-hacktivism*`, **9010–9015**) or **9080** (`koopa-nym`).
|
||
|
||
| Lab | Container | Host binds (loopback only) |
|
||
|-----|-----------|----------------------------|
|
||
| **goa-regio-ng** | `goa-regio-ng` | `127.0.0.1:9180→80`, `127.0.0.1:9322→22` |
|
||
| **mytops-local** | `mytops-local` | `127.0.0.1:8288→80` |
|
||
|
||
## goa-regio-ng
|
||
|
||
- Tree on laptop/koopa: `~/src/regio-local/`
|
||
- Inventory (canonical copy here): [`goa-regio-ng-koopa.yml`](./goa-regio-ng-koopa.yml)
|
||
- Ansible from magikoopa: ProxyCommand → `hernani@koopa` → `127.0.0.1:9322`
|
||
- Master: `koopa-admin-secrets/backups/goa/current/exchange-offline/master.priv`
|
||
|
||
```bash
|
||
rsync -az ~/src/regio-local/ hernani@koopa:src/regio-local/
|
||
ssh hernani@koopa 'cd ~/src/regio-local && REGIO_HTTP_PORT=9180 REGIO_SSH_PORT=9322 REGIO_BIND=127.0.0.1 ./scripts/01-build-run.sh'
|
||
REGIO_PODMAN_SSH=hernani@koopa REGIO_INVENTORY=$HOME/git/admin-logs/koopa-admin-log/configs/lab-local/goa-regio-ng-koopa.yml \
|
||
~/src/regio-local/scripts/03-deploy.sh
|
||
REGIO_HTTP_PORT=9180 REGIO_PROBE_SSH=hernani@koopa ~/src/regio-local/scripts/04-probe.sh
|
||
```
|
||
|
||
Never `REGIO_PUBLISH_KOOPA_PORTS=1` on koopa next to live GOA.
|
||
|
||
## mytops-local
|
||
|
||
- **Verified 2026-09-04:** koopa `127.0.0.1:8288/config` → **200**; laptop same stack on **8088** → **200**. Daylog: `2026/2026-09-04--mytops-local-podman.md`. FIND: [`../koopa-setup`](../koopa-setup) · ports: [`../ports.md`](../ports.md).
|
||
- Tree: `mytops-admin-log` **`master`** (`mytops-local/wip:…`; rsync to `~/src/mytops-admin-log` on koopa; `.git` optional). Stage live-restore on betel still TODO.
|
||
- Config snippet: [`mytops-local.toml`](./mytops-local.toml) — port **8288** on koopa
|
||
- Orchestrator: `MYTOPS_LOCAL_HTTP_PORT=8288 ./scripts/taler-merchant/setup-local.sh`
|
||
- If `taler-merchant-dbconfig` fails (no postgres socket): `systemctl enable --now postgresql` inside the container, then dbconfig + `taler-merchant.target` again
|
||
|
||
```bash
|
||
# on koopa: image + container (repo bind)
|
||
podman build -t localhost/mytops-debian-systemd:trixie -f Containerfile.mytops-local .
|
||
podman rm -f mytops-local 2>/dev/null || true
|
||
podman run -d --name mytops-local --hostname mytops-local \
|
||
--systemd=always --cap-add SYS_ADMIN --security-opt label=disable \
|
||
-v /sys/fs/cgroup:/sys/fs/cgroup:rw --tmpfs /run --tmpfs /run/lock \
|
||
-p 127.0.0.1:8288:80 \
|
||
-v "$HOME/src/mytops-admin-log:/root/mytops-admin-log:ro" \
|
||
localhost/mytops-debian-systemd:trixie /sbin/init
|
||
# apply koopa URL then setup (needs RW copy of config or run apply on host tree)
|
||
podman exec mytops-local bash -lc \
|
||
'cd /root/mytops-admin-log && MYTOPS_LOCAL_HTTP_PORT=8288 ./scripts/taler-merchant/setup-local.sh'
|
||
curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8288/config # expect 200
|
||
```
|
||
|
||
Laptop default remains **8088**; koopa lab uses **8288** so both can coexist with regio **9180**.
|