#!/bin/sh set -eu ROOT_DIR="$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)" ENV_FILE="${ECOSPECIES_ENV_FILE:-$ROOT_DIR/docs/docker-compose-traefik.env}" COMPOSE_FILE="${ECOSPECIES_COMPOSE_FILE:-$ROOT_DIR/docs/docker-compose-traefik.yml}" OUTPUT_FILE="${1:-$ROOT_DIR/ecospecies-backup.sql}" if [ ! -f "$ENV_FILE" ]; then echo "Missing env file: $ENV_FILE" >&2 exit 1 fi set -a . "$ENV_FILE" set +a DB_USER="${ECOSPECIES_DB_USER:-ecospecies}" DB_NAME="${ECOSPECIES_DB_NAME:-ecospecies}" docker compose \ --env-file "$ENV_FILE" \ -f "$COMPOSE_FILE" \ exec -T db \ pg_dump -U "$DB_USER" "$DB_NAME" \ > "$OUTPUT_FILE" printf 'Backup written to %s\n' "$OUTPUT_FILE"