67 lines
2.2 KiB
Bash
Executable File
67 lines
2.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Cloudflare Tunnel Setup Script for LCC Table Tennis Booking
|
|
# Domain: lcc-tt-booking.mikicvi.com
|
|
|
|
set -e
|
|
|
|
DOMAIN="lcc-tt-booking.mikicvi.com"
|
|
TUNNEL_NAME="lcc-tt-booking"
|
|
|
|
echo "🌐 Setting up Cloudflare Tunnel for $DOMAIN"
|
|
echo ""
|
|
|
|
# Check if cloudflared is installed
|
|
if ! command -v cloudflared &> /dev/null; then
|
|
echo "📥 Installing cloudflared..."
|
|
|
|
# Detect architecture
|
|
ARCH=$(uname -m)
|
|
if [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then
|
|
CLOUDFLARED_URL="https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64"
|
|
elif [ "$ARCH" = "armv7l" ]; then
|
|
CLOUDFLARED_URL="https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm"
|
|
else
|
|
CLOUDFLARED_URL="https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64"
|
|
fi
|
|
|
|
# Download and install
|
|
curl -L --output cloudflared "$CLOUDFLARED_URL"
|
|
sudo mv cloudflared /usr/local/bin
|
|
sudo chmod +x /usr/local/bin/cloudflared
|
|
|
|
echo "✅ cloudflared installed successfully!"
|
|
else
|
|
echo "✅ cloudflared is already installed"
|
|
fi
|
|
|
|
echo ""
|
|
echo "🔐 Please follow these steps:"
|
|
echo ""
|
|
echo "1. Authenticate with Cloudflare:"
|
|
echo " cloudflared tunnel login"
|
|
echo ""
|
|
echo "2. Create the tunnel:"
|
|
echo " cloudflared tunnel create $TUNNEL_NAME"
|
|
echo ""
|
|
echo "3. Copy the tunnel ID from the output and update cloudflare-tunnel-config.yml"
|
|
echo ""
|
|
echo "4. Create DNS record:"
|
|
echo " cloudflared tunnel route dns $TUNNEL_NAME $DOMAIN"
|
|
echo ""
|
|
echo "5. Copy the config to cloudflared directory:"
|
|
echo " mkdir -p ~/.cloudflared"
|
|
echo " cp cloudflare-tunnel-config.yml ~/.cloudflared/config.yml"
|
|
echo " # Update <your-tunnel-id> in the config file with your actual tunnel ID"
|
|
echo ""
|
|
echo "6. Test the tunnel:"
|
|
echo " cloudflared tunnel run $TUNNEL_NAME"
|
|
echo ""
|
|
echo "7. Install as a service (optional):"
|
|
echo " sudo cloudflared service install"
|
|
echo " sudo systemctl enable cloudflared"
|
|
echo " sudo systemctl start cloudflared"
|
|
echo ""
|
|
echo "📋 Tunnel configuration template is available in: cloudflare-tunnel-config.yml"
|
|
echo "🚀 After setup, your app will be available at: https://$DOMAIN"
|
|
echo "" |