ops: paivana and caddy config refresh

This commit is contained in:
Hernâni Marques 2026-09-09 00:52:54 +02:00
parent d8dbc6242b
commit 56f814a6de
No known key found for this signature in database
74 changed files with 4517 additions and 79 deletions

36
configs/bbb/Containerfile Normal file
View file

@ -0,0 +1,36 @@
# koopa-bbb-front — BigBlueButton front (Ubuntu)
# Exception to CachyOS policy: BBB packages and install scripts target Ubuntu.
# Build: bash ~/koopa-admin-log/scripts/bbb/build.sh → localhost/koopa-bbb-front:ubuntu
#
# Placeholder reverse-proxy target (nginx) until Greenlight and/or BBB core
# (bbb-install on Ubuntu) is chosen. Not production BBB media.
ARG UBUNTU_IMAGE=docker.io/library/ubuntu:24.04
FROM ${UBUNTU_IMAGE}
ENV DEBIAN_FRONTEND=noninteractive \
TZ=Europe/Zurich
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
ca-certificates curl nginx tini \
&& rm -rf /var/lib/apt/lists/*
RUN printf '%s\n' \
'server {' \
' listen 80 default_server;' \
' root /var/www/html;' \
' index index.html;' \
' location = /health { access_log off; default_type text/plain; return 200 "ok\n"; }' \
' location / { try_files $uri $uri/ =404; }' \
'}' > /etc/nginx/sites-available/default \
&& printf '%s\n' \
'<!doctype html><meta charset=utf-8><title>bbb.hacktivism.ch</title>' \
'<p>BBB front stub (Ubuntu 24.04). Full BigBlueButton / Greenlight is a separate Ubuntu install step.</p>' \
> /var/www/html/index.html
COPY entrypoint.sh /docker-entrypoint.sh
RUN chmod 755 /docker-entrypoint.sh
EXPOSE 80
ENTRYPOINT ["/usr/bin/tini", "--", "/docker-entrypoint.sh"]

38
configs/bbb/README.md Normal file
View file

@ -0,0 +1,38 @@
# BBB (BigBlueButton) — Ubuntu container (koopa)
CachyOS exception: BBB packages and `bbb-install` target **Ubuntu**. Front stub image is Ubuntu 24.04.
| Item | Value |
|------|--------|
| Stack | BigBlueButton (front stub → core later) |
| Image | `localhost/koopa-bbb-front:ubuntu` (`FROM docker.io/library/ubuntu:24.04`) |
| Live dir | `/home/hernani/koopa-bbb/` |
| Container | `koopa-bbb-front` |
| Host port | **9032** |
| Public site | `bbb.hacktivism.ch` |
## Phases
1. **Front stub (this tree)** — nginx placeholder on `:9032` so Caddy + DNS can land.
2. **Greenlight (optional)** — Rails UI talking to a real BBB API; still Ubuntu-based images.
3. **BBB core** — FreeSWITCH / mediasoup / akka-apps. Prefer official Ubuntu install (`bbb-install.sh`) on a dedicated Ubuntu host/VM, or a known multi-container BBB compose. Not CachyOS.
Media UDP/TCP and TURN are documented when core is chosen — not in this stub.
## Build + up (koopa)
```bash
bash /path/to/koopa-admin-log/scripts/bbb/build.sh
mkdir -p ~/koopa-bbb && cp -a /path/to/koopa-admin-log/configs/bbb/{compose.yml,Containerfile,entrypoint.sh} ~/koopa-bbb/
cd ~/koopa-bbb && HOST_PORT=9032 podman-compose up -d
```
## Caddy
```bash
sudo bash /path/to/koopa-admin-log/scripts/caddy/caddy-apply.sh \
--snippet /path/to/koopa-admin-log/configs/caddy/bbb.hacktivism.ch.caddy \
--site bbb.hacktivism.ch --port 9032 --label bbb
```
DNS + VeciGate for the hostname after apply Freigabe.

31
configs/bbb/compose.yml Normal file
View file

@ -0,0 +1,31 @@
# koopa-bbb — BigBlueButton front on Ubuntu (exception to CachyOS)
# Live: /home/hernani/koopa-bbb/
# Build: bash ~/koopa-admin-log/scripts/bbb/build.sh → localhost/koopa-bbb-front:ubuntu
#
# HOST_PORT: 9032 → Caddy bbb.hacktivism.ch
# Core BBB / Greenlight: separate follow-up (Ubuntu), not this stub.
services:
bbb-front:
image: localhost/koopa-bbb-front:ubuntu
build:
context: .
dockerfile: Containerfile
container_name: koopa-bbb-front
restart: unless-stopped
environment:
- TZ=Europe/Zurich
ports:
- "${HOST_PORT:-9032}:80"
healthcheck:
test: ["CMD", "curl", "-fsS", "http://127.0.0.1/health"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s
labels:
org.hacktivism.service: bbb
org.hacktivism.host_port: "${HOST_PORT:-9032}"
org.hacktivism.site: bbb.hacktivism.ch
org.hacktivism.managed_by: koopa-admin
org.hacktivism.port_status: allocated-9032
org.hacktivism.image_base: ubuntu

3
configs/bbb/entrypoint.sh Executable file
View file

@ -0,0 +1,3 @@
#!/bin/bash
set -euo pipefail
exec nginx -g 'daemon off;'

View file

@ -0,0 +1,27 @@
# koopa BBB Ubuntu VM — lean defaults (host ~15 Gi / 4 cores)
# Override before sourcing: RAM_MIB=4096 VCPUS=2 …
VM_NAME=koopa-bbb
# Official prod=16G; local-dev floor=8G. Koopa lean default=6G + guest swap.
RAM_MIB=6144
VCPUS=2
DISK_GB=50
# Ubuntu 22.04 LTS (bbb-install 3.0). 24.04 only if docs for your branch say so.
OS_VARIANT=ubuntu22.04
CLOUD_IMAGE_URL=https://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-amd64.img
HOSTNAME=bbb.hacktivism.ch
# Bridged LAN (preferred for media DNAT). Set BRIDGE= after host-prep creates br0.
BRIDGE=
# Fallback: libvirt default NAT (media harder; ok for first boot/ssh)
NETWORK_SOURCE=default
# Guest swap (MiB) — important when RAM_MIB < 8192
SWAP_MIB=4096
# SSH pubkey injected via cloud-init (path on koopa host)
SSH_PUBKEY_FILE=/home/hernani/.ssh/id_ed25519.pub
# Disk pool
POOL_DIR=/var/lib/libvirt/images
# bbb-install branch + Greenlight
BBB_INSTALL_BRANCH=v3.0.x-release
BBB_INSTALL_EXTRA=-g
# After VM has IP: Caddy may stay on :9032 stub until cutover, or point at VM:80
CADDY_BACKEND_HINT=VM_HTTP_80_OR_DNAT