rts-commander / docs /DEPLOY_QUICK.md
Luigi's picture
docs: fix paths to moved scripts (tools/ and tests/) in docs
e5b7259

🚀 Quick Deploy to Hugging Face Spaces

Temps estimé: 5 minutes


Méthode 1: Script Automatique (Recommandé)

cd /home/luigi/rts/web
./tools/deploy_hf_spaces.sh

Le script va :

  1. ✅ Vérifier tous les fichiers requis
  2. ✅ Tester le build Docker (optionnel)
  3. ✅ Configurer Git avec le remote HF
  4. ✅ Push vers Hugging Face Spaces
  5. ✅ Vous donner l'URL du jeu déployé

Méthode 2: Manuel (3 commandes)

1. Créer un Space sur Hugging Face

Aller sur https://huggingface.co/new-space

  • Space name: rts-commander
  • SDK: Docker ⚠️ Important !
  • Hardware: CPU basic (gratuit)
  • Cliquer Create Space

2. Configurer Git et Push

cd /home/luigi/rts/web

# Ajouter le remote (remplacer USERNAME)
git remote add space https://huggingface.co/spaces/USERNAME/rts-commander

# Push
git add .
git commit -m "Deploy RTS Commander v2.0"
git push space main

3. Attendre le Build

Aller sur votre Space : https://huggingface.co/spaces/USERNAME/rts-commander

Le build Docker prend 2-5 minutes ⏱️


Méthode 3: Via Interface Web

  1. Créer un Space (SDK=Docker)
  2. Cliquer "Files""Add file""Upload files"
  3. Glisser-déposer TOUS les fichiers de web/
  4. Cliquer "Commit changes to main"
  5. Attendre le build automatique

⚙️ Configuration Requise

Le projet est déjà configuré ! ✅

Fichiers essentiels présents :

  • Dockerfile (port 7860)
  • README.md (avec sdk: docker)
  • requirements.txt
  • app.py (FastAPI + WebSocket)
  • static/ (assets)
  • backend/ (game logic)

Aucune modification nécessaire !


🔐 Authentification

Si le push demande une authentification :

# Installer huggingface_hub
pip install huggingface_hub

# Login (va ouvrir le navigateur)
huggingface-cli login

# Ou avec un token
huggingface-cli login --token YOUR_TOKEN

Token : https://huggingface.co/settings/tokens


🎮 Résultat Attendu

Après le build réussi :

URL : https://USERNAME-rts-commander.hf.space

Features actives :

  • ✅ Jeu RTS complet
  • ✅ WebSocket temps réel
  • ✅ Sons (fire, explosion, build, ready)
  • ✅ Control groups 1-9
  • ✅ Multi-langue (EN/FR/繁中)
  • ✅ Superweapon nuke (touche N)
  • ✅ Responsive UI
  • ✅ 60 FPS gameplay

📊 Monitoring

Voir les logs

huggingface-cli space logs USERNAME/rts-commander --follow

Redéployer après modifications

cd /home/luigi/rts/web
git add .
git commit -m "Update: description des changements"
git push space main

HF va automatiquement rebuild !


🐛 Problèmes Courants

Build Failed

# Tester localement d'abord
cd /home/luigi/rts/web
docker build -t rts-test .
docker run -p 7860:7860 rts-test

WebSocket ne connecte pas

Vérifier dans game.js que l'URL est dynamique :

const wsUrl = `${window.location.protocol === 'https:' ? 'wss:' : 'ws:'}//${window.location.host}/ws`;

404 sur les assets

Vérifier que static/ est bien copié dans le Dockerfile (déjà ok).


📚 Documentation Complète

Voir : web/docs/DEPLOYMENT_HF_SPACES.md


✅ Checklist Rapide

Avant de déployer :

  • Compte HF créé
  • Dockerfile présent (port 7860)
  • README.md avec sdk: docker
  • Test local réussi (optionnel)
  • Space créé sur HF avec SDK=Docker

Ready to deploy! 🚀