Files
proxmox/scripts/fix-blockscout-1.sh

51 lines
1.8 KiB
Bash
Raw Permalink Normal View History

#!/usr/bin/env bash
# Fix Blockscout (VMID 5000) - Run from project root
#
# Root cause: thin1-r630-02 pool is 100% full → "no space left on device"
# Blockscout uses postgres + blockscout containers; both need Docker/overlay2.
#
# FIX: Migrate VMID 5000 to thin5 or thin6 (have free space):
# ssh root@r630-02
# pct stop 5000
# vzdump 5000 --storage local --mode stop --compress 0
# pct restore 5000 /var/lib/vz/dump/vzdump-lxc-5000-*.tar.gz --storage thin5
# pct start 5000
#
# Then start Blockscout:
# pct exec 5000 -- bash -c 'cd /opt/blockscout && docker-compose up -d'
#
# Usage: ./scripts/fix-blockscout-1.sh
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
source "${PROJECT_ROOT}/config/ip-addresses.conf" 2>/dev/null || true
VMID=5000
HOST="${PROXMOX_R630_02:-192.168.11.12}"
IP_BLOCKSCOUT="${IP_BLOCKSCOUT:-192.168.11.140}"
echo "=== Fix Blockscout (VMID $VMID) ==="
echo "Host: $HOST | Container IP: $IP_BLOCKSCOUT"
echo ""
echo "[1] Checking thin pool (thin1-r630-02 at 100% = root cause)..."
ssh -o ConnectTimeout=8 -o StrictHostKeyChecking=no root@"$HOST" "pvesm status 2>/dev/null | grep -E 'thin1-r630|thin5|thin6'"
echo ""
echo "[2] RECOMMENDED FIX - Migrate container to thin5 (has free space):"
echo " Run on Proxmox host ($HOST):"
echo ""
echo " pct stop $VMID"
echo " vzdump $VMID --storage local --mode stop --compress 0"
echo " pct destroy $VMID"
echo " pct restore $VMID /var/lib/vz/dump/vzdump-lxc-$VMID-*.tar.gz --storage thin5"
echo " pct start $VMID"
echo ""
echo " Then: pct exec $VMID -- bash -c 'cd /opt/blockscout && docker-compose up -d'"
echo ""
echo " Wait ~2 min, then test: curl -s http://${IP_BLOCKSCOUT}/api?module=stats"
echo ""
echo "See: docs/03-deployment/BLOCKSCOUT_FIX_RUNBOOK.md"