#!/bin/bash # Deployment script for Synology DS218+ set -e echo "=== BTC Bot Data Collector Deployment ===" echo "" # Check if running on Synology if [ ! -d "/volume1" ]; then echo "Warning: This script is designed for Synology NAS" echo "Continuing anyway..." fi # Create directories echo "Creating directories..." mkdir -p /volume1/btc_bot/{data,backups,logs,exports} # Check if Docker is installed if ! command -v docker &> /dev/null; then echo "Error: Docker not found. Please install Docker package from Synology Package Center" exit 1 fi # Copy configuration echo "Setting up configuration..." if [ ! -f "/volume1/btc_bot/.env" ]; then cp .env.example /volume1/btc_bot/.env echo "Created .env file. Please edit /volume1/btc_bot/.env with your settings" fi # Build and start services echo "Building and starting services..." cd docker docker-compose pull docker-compose build --no-cache docker-compose up -d # Wait for database echo "Waiting for database to be ready..." sleep 10 # Check status echo "" echo "=== Status ===" docker-compose ps echo "" echo "=== Logs (last 20 lines) ===" docker-compose logs --tail=20 echo "" echo "=== Deployment Complete ===" echo "Database available at: localhost:5432" echo "API available at: http://localhost:8000" echo "" echo "To view logs: docker-compose logs -f" echo "To stop: docker-compose down" echo "To backup: ./scripts/backup.sh"