declarative relay deployment on hetzner relay-eval.waow.tech
atproto relay
14
fork

Configure Feed

Select the types of activity you want to include in your feed.

add remote build+deploy for zlay, use local images

- zlay-publish-remote: builds on server via SSH, imports into k3s containerd
- rename zlay-publish → zlay-publish-docker as fallback
- pullPolicy: Never + drop imagePullSecrets (single-node, local images)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

zzstoatzz 08a45756 2ae12ebe

+28 -6
+1 -4
deploy/zlay-values.yaml
··· 8 8 image: 9 9 repository: atcr.io/zzstoatzz.io/zlay 10 10 tag: latest 11 + pullPolicy: Never 11 12 env: 12 13 RELAY_PORT: "3000" 13 14 RELAY_HTTP_PORT: "3001" ··· 46 47 port: 3000 47 48 http: 48 49 port: *http-port 49 - 50 - defaultPodOptions: 51 - imagePullSecrets: 52 - - name: atcr-creds 53 50 54 51 persistence: 55 52 data:
+27 -2
justfile
··· 350 350 echo "kubeconfig written to zlay-kubeconfig.yaml" 351 351 KUBECONFIG=zlay-kubeconfig.yaml kubectl get nodes 352 352 353 - # build and push zlay image (multi-stage docker build, compiles natively in x86_64 container) 354 - zlay-publish: 353 + # build and push zlay image via docker (slow on mac — prefer zlay-publish-remote) 354 + zlay-publish-docker: 355 355 #!/usr/bin/env bash 356 356 set -euo pipefail 357 357 TMPDIR=$(mktemp -d) ··· 360 360 cd "$TMPDIR" 361 361 docker build --platform linux/amd64 -t atcr.io/zzstoatzz.io/zlay:latest . 362 362 ATCR_AUTO_AUTH=1 docker push atcr.io/zzstoatzz.io/zlay:latest 363 + 364 + # build zlay on the server and import into k3s containerd (fast — native x86_64 build) 365 + zlay-publish-remote: 366 + #!/usr/bin/env bash 367 + set -euo pipefail 368 + ssh root@$(just zlay-server-ip) <<'DEPLOY' 369 + set -euo pipefail 370 + cd /opt/zlay 371 + git pull --ff-only 372 + 373 + echo "==> building binary" 374 + zig build -Doptimize=ReleaseSafe 375 + 376 + echo "==> building container image" 377 + buildah bud -t atcr.io/zzstoatzz.io/zlay:latest -f Dockerfile.runtime . 378 + 379 + echo "==> importing into k3s containerd" 380 + buildah push atcr.io/zzstoatzz.io/zlay:latest docker-archive:/tmp/zlay.tar:atcr.io/zzstoatzz.io/zlay:latest 381 + ctr -n k8s.io images import /tmp/zlay.tar 382 + rm -f /tmp/zlay.tar 383 + 384 + echo "==> restarting deployment" 385 + kubectl rollout restart deployment/zlay -n zlay 386 + kubectl rollout status deployment/zlay -n zlay --timeout=120s 387 + DEPLOY 363 388 364 389 # deploy zlay to its k3s cluster 365 390 zlay-deploy: helm-repos