docs: Caddy and ports for paivana.hacktivism.ch

This commit is contained in:
Hernâni Marques 2026-07-13 11:26:09 +02:00
parent ea6520d2a3
commit d168df26e3
7 changed files with 40 additions and 4 deletions

View file

@ -13,6 +13,7 @@ Directories are named to match **live podman container names** where possible.
| `tops/` | `koopa-tops-ng1``ng3` | `nginx:1.27-alpine` | | `tops/` | `koopa-tops-ng1``ng3` | `nginx:1.27-alpine` |
| `caddy/` `firewalld/` `systemd/` | host services | | | `caddy/` `firewalld/` `systemd/` | host services | |
| `tor/` | **`koopa-tor-relay`** (podman host net) | `localhost/koopa-tor-relay:latest` | | `tor/` | **`koopa-tor-relay`** (podman host net) | `localhost/koopa-tor-relay:latest` |
| `paivana/` | **`koopa-paivana`** (+ upstream) | `localhost/koopa-paivana:latest` |
**Authoritative running inventory:** `host/overview/LIVE.md`. **Authoritative running inventory:** `host/overview/LIVE.md`.

View file

@ -1,7 +1,7 @@
# Internal only (not in the browser URL): # Internal only (not in the browser URL):
# 9010 merchant API | 9011 exchange API | 9012 bank API # 9010 merchant API | 9011 exchange API | 9012 bank API
# 9013 bank landing | 9014 exchange landing | 9015 merchant landing # 9013 bank landing | 9014 exchange landing | 9015 merchant landing
# 9020 castopod | 9021 bonfire | 9022 prime | 9023 bt | 9024 forgejo | | 9200 forgejo-ssh # 9020 castopod | 9021 bonfire | 9022 prime | 9023 bt | 9024 forgejo | 9025 paivana | 9200 forgejo-ssh
# 9090 tops ng1 | 9091 tops ng2 | 9092 tops ng3 # 9090 tops ng1 | 9091 tops ng2 | 9092 tops ng3
{ {
@ -174,7 +174,20 @@ tops.ng3.hacktivism.ch {
} }
} }
http://taler.hacktivism.ch, http://exchange.hacktivism.ch, http://bank.hacktivism.ch, http://castopod.hacktivism.ch, http://bonfire.hacktivism.ch, http://prime.hacktivism.ch, http://bt.hacktivism.ch, http://git.hacktivism.ch, http://tops.ng1.hacktivism.ch, http://tops.ng2.hacktivism.ch, http://tops.ng3.hacktivism.ch {
# 9025 paivana-httpd (GOA paywall)
paivana.hacktivism.ch {
header Alt-Svc "clear"
reverse_proxy 127.0.0.1:9025 {
header_up Host {host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Host {host}
header_up X-Forwarded-Proto {scheme}
header_up X-Forwarded-Port 443
}
}
http://taler.hacktivism.ch, http://exchange.hacktivism.ch, http://bank.hacktivism.ch, http://castopod.hacktivism.ch, http://bonfire.hacktivism.ch, http://prime.hacktivism.ch, http://bt.hacktivism.ch, http://git.hacktivism.ch, http://paivana.hacktivism.ch, http://tops.ng1.hacktivism.ch, http://tops.ng2.hacktivism.ch, http://tops.ng3.hacktivism.ch {
handle /.well-known/acme-challenge/* { handle /.well-known/acme-challenge/* {
root * /var/www/acme root * /var/www/acme
file_server file_server

View file

@ -16,6 +16,7 @@
| 9022 | podman `koopa-prime` (Jellyfin) → Caddy `prime.hacktivism.ch` | | 9022 | podman `koopa-prime` (Jellyfin) → Caddy `prime.hacktivism.ch` |
| 9023 | podman qBittorrent → Caddy `bt.hacktivism.ch` | | 9023 | podman qBittorrent → Caddy `bt.hacktivism.ch` |
| **9024** | podman **`koopa-forgejo`** (HTTP) → Caddy **`git.hacktivism.ch`** | | **9024** | podman **`koopa-forgejo`** (HTTP) → Caddy **`git.hacktivism.ch`** |
| **9025** | podman **`koopa-paivana`** (paivana-httpd) → Caddy **`paivana.hacktivism.ch`** |
| **9200** | podman **Forgejo git-SSH** (host-direct; not Caddy) | | **9200** | podman **Forgejo git-SSH** (host-direct; not Caddy) |
| 90909092 | podman `koopa-tops-ng1``ng3` → Caddy `tops.ng{1,2,3}.hacktivism.ch` | | 90909092 | podman `koopa-tops-ng1``ng3` → Caddy `tops.ng{1,2,3}.hacktivism.ch` |
| 8080 | Tor ORPort | | 8080 | Tor ORPort |

View file

@ -1,7 +1,7 @@
# Internal only (not in the browser URL): # Internal only (not in the browser URL):
# 9010 merchant API | 9011 exchange API | 9012 bank API # 9010 merchant API | 9011 exchange API | 9012 bank API
# 9013 bank landing | 9014 exchange landing | 9015 merchant landing # 9013 bank landing | 9014 exchange landing | 9015 merchant landing
# 9020 castopod | 9021 bonfire | 9022 prime | 9023 bt | 9024 forgejo | | 9200 forgejo-ssh # 9020 castopod | 9021 bonfire | 9022 prime | 9023 bt | 9024 forgejo | 9025 paivana | 9200 forgejo-ssh
# 9090 tops ng1 | 9091 tops ng2 | 9092 tops ng3 # 9090 tops ng1 | 9091 tops ng2 | 9092 tops ng3
{ {
@ -174,7 +174,20 @@ tops.ng3.hacktivism.ch {
} }
} }
http://taler.hacktivism.ch, http://exchange.hacktivism.ch, http://bank.hacktivism.ch, http://castopod.hacktivism.ch, http://bonfire.hacktivism.ch, http://prime.hacktivism.ch, http://bt.hacktivism.ch, http://git.hacktivism.ch, http://tops.ng1.hacktivism.ch, http://tops.ng2.hacktivism.ch, http://tops.ng3.hacktivism.ch {
# 9025 paivana-httpd (GOA paywall)
paivana.hacktivism.ch {
header Alt-Svc "clear"
reverse_proxy 127.0.0.1:9025 {
header_up Host {host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Host {host}
header_up X-Forwarded-Proto {scheme}
header_up X-Forwarded-Port 443
}
}
http://taler.hacktivism.ch, http://exchange.hacktivism.ch, http://bank.hacktivism.ch, http://castopod.hacktivism.ch, http://bonfire.hacktivism.ch, http://prime.hacktivism.ch, http://bt.hacktivism.ch, http://git.hacktivism.ch, http://paivana.hacktivism.ch, http://tops.ng1.hacktivism.ch, http://tops.ng2.hacktivism.ch, http://tops.ng3.hacktivism.ch {
handle /.well-known/acme-challenge/* { handle /.well-known/acme-challenge/* {
root * /var/www/acme root * /var/www/acme
file_server file_server

View file

@ -10,6 +10,7 @@ Canonical mirror in this repo: **`configs/caddy/Caddyfile`** (same content as `h
Public sites: `taler` / `exchange` / `bank` / `castopod` / `bonfire` / `prime` / `bt` / **`git`** / **`paivana`** / tops.ng*. Public sites: `taler` / `exchange` / `bank` / `castopod` / `bonfire` / `prime` / `bt` / **`git`** / **`paivana`** / tops.ng*.
Forgejo HTTP: Caddy → `127.0.0.1:9024`. Git SSH is **host :9200** (not Caddy). Forgejo HTTP: Caddy → `127.0.0.1:9024`. Git SSH is **host :9200** (not Caddy).
Paivana: Caddy → `127.0.0.1:9025`.
Validate/reload on host: Validate/reload on host:

View file

@ -33,6 +33,7 @@ ss -lntp | grep -E '90[0-9]{2}|9200|8080'
| `koopa-prime-jellyfin` | `linuxserver/jellyfin:10.10.7` | **9022** | `prime.hacktivism.ch` | | `koopa-prime-jellyfin` | `linuxserver/jellyfin:10.10.7` | **9022** | `prime.hacktivism.ch` |
| `koopa-prime-qbittorrent` | `linuxserver/qbittorrent:5.0.4` | **9023**, **6881** | `bt.hacktivism.ch` | | `koopa-prime-qbittorrent` | `linuxserver/qbittorrent:5.0.4` | **9023**, **6881** | `bt.hacktivism.ch` |
| `koopa-forgejo` (+ postgres) | `forgejo:11-rootless` | **9024**, **9200** | `git.hacktivism.ch` | | `koopa-forgejo` (+ postgres) | `forgejo:11-rootless` | **9024**, **9200** | `git.hacktivism.ch` |
| **`koopa-paivana`** (+ upstream) | `localhost/koopa-paivana:latest` | **9025** | `paivana.hacktivism.ch` |
| **`koopa-tor-relay`** | `localhost/koopa-tor-relay:latest` | **8080**, **9051** (host net) | Tor OR (non-exit) | | **`koopa-tor-relay`** | `localhost/koopa-tor-relay:latest` | **8080**, **9051** (host net) | Tor OR (non-exit) |
| `koopa-tops-ng1` | `nginx` | **9090** | `tops.ng1.hacktivism.ch` | | `koopa-tops-ng1` | `nginx` | **9090** | `tops.ng1.hacktivism.ch` |
| `koopa-tops-ng2` | `nginx` | **9091** | `tops.ng2.hacktivism.ch` | | `koopa-tops-ng2` | `nginx` | **9091** | `tops.ng2.hacktivism.ch` |
@ -55,6 +56,7 @@ Managed from **`/home/hernani/ansible-taler-exchange/`** (see `configs/taler-exc
| `prime.hacktivism.ch` | 9022 | | `prime.hacktivism.ch` | 9022 |
| `bt.hacktivism.ch` | 9023 | | `bt.hacktivism.ch` | 9023 |
| `git.hacktivism.ch` | 9024 (HTTP); git-SSH **9200** host-direct | | `git.hacktivism.ch` | 9024 (HTTP); git-SSH **9200** host-direct |
| `paivana.hacktivism.ch` | 9025 (paivana-httpd GOA paywall) |
| `tops.ng1.hacktivism.ch` | 9090 | | `tops.ng1.hacktivism.ch` | 9090 |
| `tops.ng2.hacktivism.ch` | 9091 | | `tops.ng2.hacktivism.ch` | 9091 |
| `tops.ng3.hacktivism.ch` | 9092 | | `tops.ng3.hacktivism.ch` | 9092 |
@ -70,6 +72,7 @@ Config: `/etc/caddy/Caddyfile` (mirror `configs/caddy/Caddyfile`).
| `~/koopa-bonfire/` | Bonfire compose + gitbot | | `~/koopa-bonfire/` | Bonfire compose + gitbot |
| `~/koopa-prime/` | Jellyfin + qBittorrent | | `~/koopa-prime/` | Jellyfin + qBittorrent |
| `~/koopa-forgejo/` | Forgejo rootless | | `~/koopa-forgejo/` | Forgejo rootless |
| `~/koopa-paivana/` | Paivana paywall (`koopa-paivana`) |
| `~/koopa-tops/` | tops.ng1ng3 (`koopa-tops-ng*`) | | `~/koopa-tops/` | tops.ng1ng3 (`koopa-tops-ng*`) |
| `~/koopa-caddy/` | Caddyfile working tree on host | | `~/koopa-caddy/` | Caddyfile working tree on host |
| `~/koopa-tor-relay/` | Tor relay container (torrc, data/identity, log) | | `~/koopa-tor-relay/` | Tor relay container (torrc, data/identity, log) |

View file

@ -35,6 +35,7 @@ flowchart TB
Prime["koopa-prime jellyfin\n:9022"] Prime["koopa-prime jellyfin\n:9022"]
BT["qbittorrent\n:9023"] BT["qbittorrent\n:9023"]
Forgejo["koopa-forgejo ROOTLESS\n:9024 HTTP / :9200 SSH"] Forgejo["koopa-forgejo ROOTLESS\n:9024 HTTP / :9200 SSH"]
Paivana["koopa-paivana\n:9025"]
end end
Tor["tor ORPort :8080"] Tor["tor ORPort :8080"]
@ -59,6 +60,7 @@ flowchart TB
CaddyHTTPS -->|prime.hacktivism.ch| Prime CaddyHTTPS -->|prime.hacktivism.ch| Prime
CaddyHTTPS -->|bt.hacktivism.ch| BT CaddyHTTPS -->|bt.hacktivism.ch| BT
CaddyHTTPS -->|git.hacktivism.ch| Forgejo CaddyHTTPS -->|git.hacktivism.ch| Forgejo
CaddyHTTPS -->|paivana.hacktivism.ch| Paivana
``` ```
## Port table ## Port table
@ -78,6 +80,7 @@ flowchart TB
| 9022 | podman | **jellyfin** (prime) | | 9022 | podman | **jellyfin** (prime) |
| 9023 | podman | **qbittorrent** (bt) | | 9023 | podman | **qbittorrent** (bt) |
| **9024** | podman | **forgejo** HTTP → `git.hacktivism.ch` | | **9024** | podman | **forgejo** HTTP → `git.hacktivism.ch` |
| **9025** | podman | **paivana**`paivana.hacktivism.ch` |
| **9200** | podman | **forgejo** git-SSH (host-direct) | | **9200** | podman | **forgejo** git-SSH (host-direct) |
| 90909092 | podman | **tops** `koopa-tops-ng1``ng3` | | 90909092 | podman | **tops** `koopa-tops-ng1``ng3` |
| 8080 | tor | ORPort | | 8080 | tor | ORPort |
@ -94,6 +97,7 @@ Full port notes: `configs/ports.md`.
| Merchant container | `configs/taler-hacktivism/`, `scripts/taler-merchant/` | | Merchant container | `configs/taler-hacktivism/`, `scripts/taler-merchant/` |
| Exchange container | `configs/taler-exchange/`, `scripts/taler-exchange/` | | Exchange container | `configs/taler-exchange/`, `scripts/taler-exchange/` |
| **Forgejo rootless** | `configs/forgejo/`, `2026/2026-07-10--forgejo-rootless.md` | | **Forgejo rootless** | `configs/forgejo/`, `2026/2026-07-10--forgejo-rootless.md` |
| Paivana paywall | `configs/paivana/` |
| tops (`koopa-tops-ng*`) | `configs/tops/` | | tops (`koopa-tops-ng*`) | `configs/tops/` |
| Tor relay (`koopa-tor-relay` podman) | `configs/tor/`, `host/tor/` | | Tor relay (`koopa-tor-relay` podman) | `configs/tor/`, `host/tor/` |
| Tor monitoring scripts | `scripts/monitoring/` | | Tor monitoring scripts | `scripts/monitoring/` |