koopa-admin-log/configs/cryptpad
2026-09-09 00:52:54 +02:00
..
compose.yml ops: paivana and caddy config refresh 2026-09-09 00:52:54 +02:00
config.example.js ops: paivana and caddy config refresh 2026-09-09 00:52:54 +02:00
Containerfile ops: paivana and caddy config refresh 2026-09-09 00:52:54 +02:00
edge.conf ops: paivana and caddy config refresh 2026-09-09 00:52:54 +02:00
entrypoint.sh ops: paivana and caddy config refresh 2026-09-09 00:52:54 +02:00
README.md ops: paivana and caddy config refresh 2026-09-09 00:52:54 +02:00

CryptPad — on CachyOS (koopa)

Item Value
Stack CryptPad
Image localhost/koopa-cryptpad:cachyos
Live dir /home/hernani/koopa-cryptpad/
Host port 9030 = Paivana paywall; nginx edge backend 127.0.0.1:19130 → app
App ports (internal) 3000 HTTP, 3003 websocket
Public site cryptpad.hacktivism.ch

websocketPort must differ from httpPort (upstream default 3003). Compose runs koopa-cryptpad-edge (nginx) so Caddy still only targets 9030.
Upstream wants a separate safe/sandbox origin for some builds — add a second vhost after first boot if the admin UI requires it.

Build + up

bash /path/to/koopa-admin-log/scripts/cryptpad/build.sh
mkdir -p ~/koopa-cryptpad
cp -a /path/to/koopa-admin-log/configs/cryptpad/{compose.yml,config.example.js} ~/koopa-cryptpad/
cp ~/koopa-cryptpad/config.example.js ~/koopa-cryptpad/config.js
# edit httpUnsafeOrigin / httpSafeOrigin in config.js
cd ~/koopa-cryptpad && podman-compose up -d

Caddy

sudo bash /path/to/koopa-admin-log/scripts/caddy/caddy-apply.sh \
  --snippet …/configs/caddy/cryptpad.hacktivism.ch.caddy \
  --site cryptpad.hacktivism.ch --port 9030 --label cryptpad