Files
dillard 2626036a21 Initial commit: Nextcloud bare/Hansson → AIO migration toolkit
Scripts 01-05 voor sequentiële migratie: transfer, staging, upgrade-keten,
AIO-install en DB-import. PostgreSQL + MySQL/MariaDB bronnen ondersteund.
Proxmox/OPNSense VM-builder optioneel in proxmox/. README met 12 gotchas.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 01:18:01 +02:00

57 lines
3.3 KiB
Bash
Executable File

#!/usr/bin/env bash
# config.sh — Vul dit in voordat je de scripts draait.
# Wordt gesourcet door alle andere scripts: source "$(dirname "$0")/config.sh"
# ── Bronserver (bestaande Nextcloud-installatie) ──────────────────────────────
SOURCE_HOST="192.0.2.10" # IP van de oude NC-server
SOURCE_USER="root" # SSH-gebruiker (key-based, passwordless)
SOURCE_NC_PATH="/var/www/nextcloud"
SOURCE_DATA_PATH="/mnt/ncdata"
SOURCE_DB="nextcloud_db"
SOURCE_DB_USER="nextcloud_db_user"
SOURCE_DB_PASS="" # alleen nodig voor MySQL/MariaDB; leeglaten voor PostgreSQL
SOURCE_DB_TYPE="postgres" # "postgres" of "mysql"
# ── Doelserver (nieuwe VM waar AIO komt te draaien) ───────────────────────────
TARGET_SSH="root@10.0.0.10" # SSH naar doel (of ~/.ssh/config alias)
TARGET_DATA_PATH="/mnt/ncdata" # pad waar ncdata gemount is
# ── Domeinen ──────────────────────────────────────────────────────────────────
NC_DOMAIN="next.example.com" # productiedomein (voor AIO + LE-cert)
NC_STAGING_DOMAIN="nc.internal" # staging-domein (HTTP-only, intern)
# ── Staging PostgreSQL ────────────────────────────────────────────────────────
# Wachtwoord voor de staging-DB (wordt aangemaakt in 02-build-staging.sh)
STAGING_DB="nextcloud_db"
STAGING_DB_USER="nextcloud_db_user"
STAGING_DB_PASS="changeme-strong-password"
# ── NC upgrade-pad ────────────────────────────────────────────────────────────
# Pas aan op basis van je bronversie. NC vereist sequentiële upgrades per major.
# Eindversie moet overeenkomen met de AIO-versie die je installeert (zie stap 4).
# Voorbeeld: bron = v30, AIO target = v33
NC_UPGRADE_VERSIONS=("31.0.14" "32.0.12" "33.0.6")
# ── Proxmox snapshots (optioneel) ─────────────────────────────────────────────
# Zet op false als je geen Proxmox hebt of geen snapshots wil maken.
USE_PROXMOX=true
PROXMOX_HOST="pve01" # SSH-alias voor de PVE-node
PROXMOX_VMID=100 # VM ID van de doel-VM
# ── Proxmox VM aanmaken (alleen voor proxmox/build-vm.sh) ─────────────────────
# Sla deze sectie over als je de VM handmatig aanmaakt.
VM_NAME="nc-aio"
VM_CORES=4
VM_MEMORY=8192 # MB
VM_DISK_SIZE=50 # GB systeemdisk
VM_DATA_SIZE=500 # GB datadisk (/mnt/ncdata)
VM_VLAN=50 # VLAN-tag; leeglaten voor untagged
VM_BRIDGE=vmbr20
VM_PRIVATE_IP=10.0.0.10 # moet overeenkomen met TARGET_SSH
VM_PRIVATE_GW=10.0.0.1
VM_PRIVATE_PREFIX=24
VM_PUBLIC_IP="" # publiek VIP op loopback; leeglaten indien niet van toepassing
VM_DNS=10.0.0.1
VM_SEARCH_DOMAIN=example.com
CLOUD_IMAGE="/var/lib/vz/template/iso/debian-13-genericcloud-amd64.qcow2"