Qu'est-ce que Firebase hosting ?
Ses possibilités et limites
Sommaire
- Structure d'une application
- Orienté FAAS
- Notions chez Firebase
- Environnements
- Avantages / inconvénients
- Coûts / limites
- Démo
Structure d'une application
Classiquement 1/2
Structure d'une application
Architecture moderne (JAM stack) 2/2
JAM Stack : Une architecture moderne: créez des sites rapides et sécurisés et des applications dynamiques avec JavaScript, API et balisage pré-rendu, servis sans serveurs Web.
Orienté FAAS
exemple
Notions chez Firebase
1/3
-
Projet
- "entité de niveau supérieur de Firebase"
- "un conteneur virtuel pour les données, le code, la configuration et les services."
- projet Firebase est un projet GCP
- Vous pouvez y déverser vos applications
-
Application
- Programme de type iOS, Android, Web, c++, unity exposant des fonctionnalités
-
Site
- Sur un projet, on peut avoir * sites web, par défaut il y en a un, celui du projet
Notions chez Firbase
2/3
Notions chez Firebase
3/3
-
firebase.json
- configuration de l'application
-
.firebaserc
- informations projet
Environnements
- Un code source d'application
- déploiement souhaité dans * envs
- Cloisonnement par PROJET
- Switch d'un environnement
- "firebase use PROJECT_ID"
- OU
- "--projet=PROJECT_ID" sur firebase deploy
- "firebase use PROJECT_ID"
Environnements
2/2
- En local, utilisation de "firebase use..."
- Plus clair dans la CLI (package.json)
Avantages / inconvénients
- Avantages
- Facilité de déploiement
- mettre votre domaine
- Tester en local la configuration
- Partage de ressources entre * apps
- Paramétrage avancé des statiques
- Possibilité de rajouter des "Functions"
- Inconvénients
- A vous de voir comment déployer automatiquement au build (via CLI, ou tiers plateforme de build)
- Le partage de ressources pas naturel
- Ticket d'entrée sur les relations projet / app / site
Coût / limites
- Coût
- Facturation en fonction
- du stockage (go) - 10go gratuit
- au transfert (go / mois) - 10 go / mois gratuit
- Facturation en fonction
- Limites
- Firebase Hosting gère un maximum de 36 sites / projet
- Avoir plusieurs sites dans un projet sans DNS
Démo
application d'entrainement en piano (wano)
Création d'une application
Upload d'un site
en reactjs par exemple
Cibler la publication
firebase target:apply hosting how-hosting how-to-use-firebase-hosting
firebase deploy --only hosting:how-hosting
rajouter l"attribut "target" dans "firebase.json"