27 lines
655 B
Bash
27 lines
655 B
Bash
#!/bin/bash
|
|
|
|
CONTAINER_NAME="db-1"
|
|
BACKUP_DIR="../backup"
|
|
DATE=$(date +%Y-%m-%d_%H-%M-%S)
|
|
BACKUP_FILE="${BACKUP_DIR}/mydb_backup_${DATE}.sql"
|
|
|
|
mkdir -p $BACKUP_DIR
|
|
|
|
# Cek container yang berjalan
|
|
CONTAINER_ID=$(docker ps -q --filter "name=$CONTAINER_NAME")
|
|
|
|
if [ -z "$CONTAINER_ID" ]; then
|
|
echo "❌ Error: Container dengan nama mengandung '$CONTAINER_NAME' tidak sedang berjalan."
|
|
echo " Jalankan: docker compose up -d"
|
|
exit 1
|
|
fi
|
|
|
|
echo "🔄 Memulai backup database..."
|
|
|
|
docker exec $CONTAINER_ID pg_dump -U user microdb > $BACKUP_FILE
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo "✅ Backup berhasil disimpan di: $BACKUP_FILE"
|
|
else
|
|
echo "❌ Backup gagal"
|
|
fi |