Avant de les déployer sur votre site en ligne, vous devez les afficher et les tester. Firebase Hosting vous permet d'afficher et de tester les modifications localement, et d'interagir avec les ressources de projet backend émulé. Si vous avez besoin que vos coéquipiers voient et testent vos modifications, Hosting peut créer des URL d'aperçu temporaires et partageables pour votre site. Nous proposons même une intégration GitHub pour le déploiement à partir d'une demande d'extraction.
Avant de commencer
Suivez les étapes décrites sur la page Hosting Premiers pas, en particulier les tâches suivantes:
- Installez la dernière version de la CLI Firebase ou mettez-la à jour.
- Associez le répertoire de projet local (contenant le contenu de votre application) à votre projet Firebase.
Vous pouvez éventuellement déployer le contenu et la configuration Hosting de votre application, mais ce n'est pas une condition préalable aux étapes de cette page.
Étape 1:Effectuez des tests en local
Si vous effectuez des itérations rapides ou si vous souhaitez que votre application interagisse avec des ressources de projet backend émulées, vous pouvez tester votre contenu et votre configuration Hosting localement. Lors des tests en local, Firebase diffuse votre application Web sur une URL hébergée localement.
Hosting fait partie de Firebase Local Emulator Suite, qui permet à votre application d'interagir avec votre contenu et votre configuration Hosting émulés, ainsi que, éventuellement, vos ressources de projet émulées (fonctions, bases de données et règles).
(Facultatif) Par défaut, votre application hébergée localement interagit avec des ressources de projet réelles, et non émulées (fonctions, base de données, règles, etc.). Vous pouvez également connecter votre application à des ressources de projet émulées que vous avez configurées. En savoir plus : Realtime Database | Cloud Firestore | Cloud Functions
À partir de la racine du répertoire de votre projet local, exécutez la commande suivante:
firebase emulators:start
Ouvrez votre application Web à l'URL locale renvoyée par la CLI (généralement
http://localhost:5000
).Pour mettre à jour l'URL locale avec les modifications, actualisez votre navigateur.
Tester depuis d'autres appareils locaux
Par défaut, les émulateurs ne répondent qu'aux requêtes de localhost
. Cela signifie que vous pourrez accéder à votre contenu hébergé depuis le navigateur Web de votre ordinateur, mais pas depuis d'autres appareils de votre réseau. Si vous souhaitez effectuer des tests à partir d'autres appareils locaux, configurez votre firebase.json
comme suit:
"emulators": {
// ...
"hosting": {
"port": 5000,
"host": "0.0.0.0"
}
}
Étape 2:Prévisualiser et partager
Si vous souhaitez que d'autres personnes puissent consulter les modifications apportées à votre application Web avant leur mise en ligne, vous pouvez utiliser des canaux de prévisualisation.
Une fois que vous avez déployé votre application Web sur un canal de prévisualisation, Firebase la diffuse à l'aide d'une "URL de prévisualisation", qui est une URL temporaire partageable. Lorsque vous utilisez une URL de prévisualisation, votre application Web interagit avec votre backend réel pour toutes les ressources du projet (à l'exception des fonctions "épinglées" dans votre configuration de réécriture).
Notez que, même si les URL d'aperçu sont difficiles à deviner (car elles contiennent un hachage aléatoire), elles sont publiques. Par conséquent, toute personne qui connaît l'URL peut y accéder.
À partir de la racine du répertoire de votre projet local, exécutez la commande suivante:
firebase hosting:channel:deploy CHANNEL_ID
Remplacez CHANNEL_ID par une chaîne sans espaces (par exemple,
feature_mission-2-mars
). Cet ID servira à créer l'URL d'aperçu associée au canal d'aperçu.Ouvrez votre application Web à l'URL d'aperçu renvoyée par la CLI. Elle doit ressembler à ceci :
PROJECT_ID--CHANNEL_ID-RANDOM_HASH.web.app
Pour mettre à jour votre URL d'aperçu avec les modifications, exécutez à nouveau la même commande. Veillez à spécifier le même
CHANNEL_ID
dans la commande.
Découvrez comment gérer les canaux de prévisualisation, y compris comment définir la date d'expiration d'un canal.
Firebase Hosting est compatible avec une action GitHub qui crée et met à jour automatiquement une URL d'aperçu lorsque vous validez des modifications dans une demande d'extraction. Découvrez comment configurer et utiliser cette action GitHub.
Étape 3:Déployez en production
Lorsque vous êtes prêt à partager vos modifications avec le monde entier, déployez votre contenu et votre configuration Hosting sur votre chaîne en direct. Firebase propose plusieurs options pour cette étape en fonction de votre cas d'utilisation (voir les options ci-dessous).
Option 1: Cloner une chaîne de prévisualisation sur votre chaîne en direct
Cette option vous permet de vous assurer que vous déployez sur votre chaîne en direct le contenu et la configuration exacts que vous avez testés dans une chaîne Preview. En savoir plus sur le clonage de versions
Depuis n'importe quel répertoire, exécutez la commande suivante:
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:live
Remplacez chaque espace réservé par ce qui suit:
SOURCE_SITE_ID et TARGET_SITE_ID: il s'agit des ID des sites Hosting contenant les canaux.
- Pour votre site Hosting par défaut, utilisez l'ID de votre projet Firebase.
- Vous pouvez spécifier des sites appartenant au même projet Firebase ou même à différents projets Firebase.
SOURCE_CHANNEL_ID: il s'agit de l'identifiant du canal qui diffuse actuellement la version que vous souhaitez déployer sur votre chaîne en direct.
- Pour une chaîne en direct, utilisez
live
comme ID de chaîne.
- Pour une chaîne en direct, utilisez
Afficher vos modifications (étape suivante).
Option 2: Déployer depuis votre répertoire de projet local vers votre chaîne en direct
Cette option vous permet d'ajuster les configurations spécifiques au canal en direct ou de déployer même si vous n'avez pas utilisé de canal preview.
À partir de la racine du répertoire de votre projet local, exécutez la commande suivante:
firebase deploy --only hosting
Afficher vos modifications (étape suivante).
Étape 4:Afficher vos modifications sur votre site en ligne
Les deux options ci-dessus déploient votre contenu et votre configuration Hosting sur les sites suivants:
Les sous-domaines provisionnés par Firebase pour votre site Hosting par défaut et les sites Hosting supplémentaires:
SITE_ID.web.app
(par exemple,PROJECT_ID.web.app
)
SITE_ID.firebaseapp.com
(par exemple,PROJECT_ID.firebaseapp.com
)Tous les domaines personnalisés que vous avez associés à vos sites Hosting
Pour limiter le déploiement à un site Hosting spécifique, spécifiez une cible de déploiement dans votre commande CLI.
Autres activités et informations de déploiement
Ajouter un commentaire pour le déploiement
Vous pouvez ajouter un commentaire à un déploiement. Ce commentaire s'affiche avec les autres informations de déploiement dans le tableau de bord Hosting de la console Firebase. Exemple :
firebase deploy --only hosting -m "Deploying the best new feature ever."
Ajouter des tâches de prédéploiement et de postdéploiement
Vous pouvez éventuellement connecter des scripts shell à la commande firebase deploy
pour effectuer des tâches de prédéploiement ou de postdéploiement. Par exemple, un hook postdéploiement peut avertir les administrateurs des nouveaux déploiements de contenu du site. Pour en savoir plus, consultez la documentation de la CLI Firebase.
Mettre en cache le contenu déployé
Lorsqu'une requête est envoyée pour un contenu statique, Firebase Hosting met automatiquement le contenu en cache sur le CDN. Si vous redéployez le contenu de votre site, Firebase efface automatiquement tout votre contenu statique mis en cache sur le CDN afin que les nouvelles requêtes reçoivent votre nouveau contenu.
Notez que vous pouvez configurer le mise en cache du contenu dynamique.
Diffusion via HTTPS
Assurez-vous que toutes les ressources externes qui ne sont pas hébergées sur Firebase Hosting sont chargées via SSL (HTTPS),y compris les scripts externes. La plupart des navigateurs n'autorisent pas les utilisateurs à charger de "contenu mixte" (trafic SSL et non SSL).
Supprimer des fichiers
Dans Firebase Hosting, le principal moyen de supprimer des fichiers sélectionnés d'un site déployé consiste à les supprimer localement, puis à les redéployer.
Étapes suivantes
Intégrez GitHub et itérez votre contenu en avant-première en configurant l'action GitHub.
Découvrez d'autres fonctionnalités d'hébergement:
Consultez la documentation complète de la CLI Firebase.
Préparez le lancement de votre application:
- Configurez des alertes budgétaires pour votre projet dans la console Google Cloud.
- Surveillez le tableau de bord "Utilisation et facturation" dans la console Firebase pour obtenir une vue d'ensemble de l'utilisation de votre projet sur plusieurs services Firebase. Vous pouvez également consulter le tableau de bord Utilisation de Hosting pour en savoir plus sur l'utilisation.
- Consultez la checklist de lancement de Firebase.