nordabiz/.claude/commands/backup.md
Maciej Pienczyn 69bb6b839a docs: Fix incorrect SQLite references - DEV uses PostgreSQL via Docker
The documentation incorrectly stated that DEV environment uses SQLite
when it actually uses PostgreSQL via Docker on localhost:5433.

Updated files:
- CLAUDE.md - main project instructions
- PROJECT_INFO.md - environment documentation
- deployment_checklist.md - deployment procedures
- SCRIPTS_INDEX.md - script usage commands
- .claude/commands/*.md - all slash command definitions
- tests/test_admin_seo_dashboard.py - test database URL

DEV environment:
- PostgreSQL via Docker: localhost:5433
- Container: nordabiz-postgres
- Database: nordabiz
- User: nordabiz_app

PROD environment:
- PostgreSQL: 10.22.68.249:5432

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 03:40:50 +01:00

2.7 KiB

NordaBiz Backup Operations

Wykonaj backup bazy danych i konfiguracji projektu NordaBiz.

Argument: $ARGUMENTS

Opcjonalny argument określa typ backupu:

  • /backup - pełny backup (DB + pliki)
  • /backup db - tylko baza danych
  • /backup snapshot - snapshot VM w Proxmox
  • /backup restore - przywracanie (interaktywne)

Kroki do wykonania:

1. Backup lokalnej bazy PostgreSQL (DEV via Docker)

mkdir -p backups
docker exec nordabiz-postgres pg_dump -U nordabiz_app nordabiz > "backups/dev_$(date +%Y%m%d_%H%M%S).sql"

2. Backup produkcyjnej bazy PostgreSQL

Eksport do lokalnego:

ssh maciejpi@10.22.68.249 "sudo -u postgres pg_dump nordabiz" > "backups/prod_$(date +%Y%m%d_%H%M%S).sql"

Lub backup na serwerze:

ssh maciejpi@10.22.68.249 "sudo -u postgres pg_dump nordabiz > /tmp/backup_$(date +%Y%m%d_%H%M%S).sql"

3. Backup plików konfiguracyjnych

mkdir -p backups/config_$(date +%Y%m%d)
cp .env backups/config_$(date +%Y%m%d)/dev.env
ssh maciejpi@10.22.68.249 "cat /var/www/nordabiznes/.env" > backups/config_$(date +%Y%m%d)/prod.env
ssh maciejpi@10.22.68.249 "cat /etc/nginx/sites-available/nordabiznes" > backups/config_$(date +%Y%m%d)/nginx.conf

4. Snapshot VM w Proxmox

Użyj skill proxmox-manager:

Utwórz snapshot VM NORDABIZ-01 (ID: 249) z opisem "Backup przed [operacja]"

Lub ręcznie:

ssh root@10.22.68.10 "qm snapshot 249 backup_$(date +%Y%m%d) --description 'Automatyczny backup'"

5. Lista istniejących backupów

Lokalne:

ls -la backups/*.sql 2>/dev/null

Snapshoty VM (użyj skill proxmox-manager):

Pokaż snapshoty VM 249

6. Przywracanie z backupu

DEV (Docker PostgreSQL):

docker exec -i nordabiz-postgres psql -U nordabiz_app -d nordabiz < backups/dev_YYYYMMDD_HHMMSS.sql

PROD (PostgreSQL):

cat backups/prod_YYYYMMDD_HHMMSS.sql | ssh maciejpi@10.22.68.249 "sudo -u postgres psql nordabiz"

Rollback VM:

Użyj skill proxmox-manager:

Przywróć VM 249 ze snapshotu backup_YYYYMMDD

Harmonogram backupów:

Typ Częstotliwość Retencja
DB dump Codziennie 7 dni
VM snapshot Przed deployment 3 snapshoty
Pełny backup Tygodniowo 4 tygodnie

Przechowywanie:

  • Lokalne: ./backups/ (dodane do .gitignore)
  • Proxmox: snapshoty na storage lokalnym
  • Offsite: rozważ rsync do R11-PBS-01

Uwagi:

  • ZAWSZE rób backup przed większymi zmianami
  • Testuj przywracanie okresowo
  • Snapshoty VM są najszybsze do rollbacku
  • PostgreSQL dump jest przenośny między środowiskami
  • DEV używa Docker PostgreSQL na localhost:5433
  • PROD używa PostgreSQL na 10.22.68.249:5432