- BTCPay Server integration - TeleBot Telegram bot - Review system - Admin area - Docker deployment configuration 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
3.9 KiB
3.9 KiB
BTCPay Server Restoration Guide
Prerequisites
- Fresh Debian 13 server
- Root access
- At least 50GB free disk space
- Domain name pointed to server IP
Restoration Steps
1. Initial Server Setup
# Login as root
ssh root@yourserver.com
# Update system
apt update && apt upgrade -y
# Install required packages
apt install -y git docker.io docker-compose curl
2. Copy Backup Files
# Copy this backup folder to server
scp -r btcpay-backup-20250916 root@yourserver.com:/root/
# Navigate to backup
cd /root/btcpay-backup-20250916
3. Install BTCPay Server
# Clone BTCPay Docker repository
git clone https://github.com/btcpayserver/btcpayserver-docker /opt/btcpayserver-docker
cd /opt/btcpayserver-docker
# Copy environment file
cp /root/btcpay-backup-20250916/.env /opt/.env
# Copy override file
cp /root/btcpay-backup-20250916/docker-compose.override.yml ./
# Update domain in .env if needed
nano /opt/.env
# Change BTCPAY_HOST to your new domain if different
4. Run BTCPay Setup
# Load environment
source /opt/.env
# Run setup
./btcpay-setup.sh -i
# This will:
# - Generate docker-compose configuration
# - Create necessary volumes
# - Start all containers
# - Setup SSL certificates
5. Restore Monero Wallet (if needed)
# Wait for containers to start
docker ps
# Create wallet password file
docker exec btcpayserver_monero_wallet sh -c 'echo "password" > /wallet/password.txt'
# Restart wallet container
docker restart btcpayserver_monero_wallet
# Verify wallet is running
docker logs btcpayserver_monero_wallet --tail 50
6. Configure BTCPay Store
- Access BTCPay at https://yourdomain.com
- Create admin account
- Create store
- Enable Bitcoin and install Monero plugin:
- Server Settings → Plugins → Install Monero plugin
- Restart BTCPay after plugin installation
- Configure Monero wallet in store settings:
- Wallet Address: Use the address from monero-wallet-info.txt
- Or generate new wallet if preferred
7. Security Hardening
# Setup firewall
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 2255/tcp # If using custom SSH port
ufw --force enable
# Change SSH port (optional)
sed -i 's/#Port 22/Port 2255/' /etc/ssh/sshd_config
systemctl restart ssh
# Install fail2ban
apt install -y fail2ban
systemctl enable fail2ban
systemctl start fail2ban
8. Verify Installation
# Check all containers running
docker ps
# Check Bitcoin sync status
docker logs generated_bitcoin_1 | grep -i "progress"
# Check Monero status
docker logs btcpayserver_monero | tail -20
# Check BTCPay logs
docker logs generated_btcpayserver_1 | tail -50
# Verify pruning is active
docker logs generated_bitcoin_1 | grep -i "prune"
Important Notes
Monero Wallet
The Monero wallet address in this backup is:
49TnBo2VHbncxvrMFbX5uMS9mtAGkiG1L4N6i7MMz4MhA9AXfyRqBdmf1XrFtGXq2v2G72TNtiVFo2kot5SHnBBz3gwoMj9
RPC Password: password
Bitcoin Pruning
Bitcoin is configured to use maximum 10GB disk space. The configuration is in docker-compose.override.yml and will be applied automatically.
Domain Changes
If restoring to a different domain:
- Update BTCPAY_HOST in /opt/.env
- Update REVERSEPROXY_DEFAULT_HOST in /opt/.env
- Re-run:
./btcpay-setup.sh -i
Troubleshooting
Monero wallet not connecting:
docker exec btcpayserver_monero_wallet sh -c 'ls -la /wallet/'
docker restart btcpayserver_monero_wallet
Bitcoin not pruning:
# Verify override file is in place
cat /opt/btcpayserver-docker/docker-compose.override.yml
# Restart Bitcoin container
docker restart generated_bitcoin_1
SSL certificate issues:
# Force renewal
docker exec generated_letsencrypt-nginx-proxy-companion_1 /app/force_renew
Support
For BTCPay Server support: https://docs.btcpayserver.org/ For Monero plugin: Check BTCPay Server Plugins documentation