Files
ChatApp/scripts/prod/config.sh
T
byGalax 5bc30c950c feat(infra): migrate self-hosted backend to netralax.de
Move Supabase + LiveKit from the netralax.cloud VPS to a new netralax.de server. Adds the migration runbook (docs/), one-time move scripts (scripts/migrate/), and prod Caddy/LiveKit config templates (infra/). Repoints the desktop publish/changelog URLs and prod ops config to .de. JWT_SECRET + VAPID copied identically so already-installed clients keep working; the new server also serves the legacy .cloud hostnames.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 19:39:04 +02:00

42 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env bash
# Shared config for all prod scripts. Source this in each script:
# source "$(dirname "$0")/config.sh"
#
# Customize here when the server IP / domains change — all other scripts pick
# the values up automatically.
# End state after the netralax.de migration. The old .cloud VPS was
# 46.225.156.249 — for the one-time move (data dump/restore, storage rsync)
# use scripts/migrate/, which knows the old host explicitly. Fill in the new
# server IP once the netralax.de VPS exists, then this becomes the live config
# for all push-migrations / push-edge-function / create-invite / logs scripts.
export PROD_SERVER="141.95.34.204"
# Login user on the new .de VPS is "debian" (the old .cloud VPS used "prox").
export PROD_USER="debian"
# Paths on the remote server.
export PROD_SUPABASE_DIR="/opt/supabase"
export PROD_LIVEKIT_DIR="/opt/livekit"
# Public domains (served via Caddy on the new VPS). Caddy also keeps serving
# the legacy supabase.netralax.cloud / livekit.netralax.cloud vhosts (same
# backends) so already-installed clients keep working until they auto-update.
export PROD_DOMAIN_SUPABASE="supabase.netralax.de"
export PROD_DOMAIN_LIVEKIT="livekit.netralax.de"
# SSH helper: forwards the standard `-o StrictHostKeyChecking=accept-new` so
# first connections don't prompt. Override SSH_OPTS from the environment if
# you need a jumphost etc.
export SSH_OPTS="${SSH_OPTS:--o StrictHostKeyChecking=accept-new}"
export SSH_HOST="${PROD_USER}@${PROD_SERVER}"
remote() {
# shellcheck disable=SC2086
ssh ${SSH_OPTS} "${SSH_HOST}" "$@"
}
remote_tty() {
# shellcheck disable=SC2086
ssh ${SSH_OPTS} -t "${SSH_HOST}" "$@"
}