web-dev-qa-db-fra.com

Erreur de service Firebase: le port 5000 n'est pas ouvert. Impossible de démarrer l'émulateur de fonctions

J'essaie de servir les fonctions Firebase localement, mais lorsque j'exécute firebase serve ou firebase emulators:start le message d'erreur est: "Le port 5000 n'est pas ouvert, impossible de démarrer l'émulateur de fonctions."

J'utilise Windows 10, j'ai donc essayé de changer le numéro de port, vérifiez si le port est bloqué par le pare-feu et je crée une nouvelle règle dans le pare-feu aux ports 5000 à 5010, mais aucune de ces approches n'a fonctionné pour moi.

16
Victor de Almeida

Un problème similaire a récemment été signalé dans le dépôt officiel de github: https://github.com/firebase/firebase-tools/issues/1606 .

Elle est causée par un bogue dans une dépendance (node ​​portfinder), comme vous pouvez le voir ici. https://github.com/http-party/node-portfinder/pull/86

Une solution rapide pour le modifier pourrait être d'utiliser l'ancienne version de node portfinder (v 1.0.21). Alternativement, vous pouvez le faire en modifiant node_modules/firebase-tools/lib/emulator/controller.js Et en changeant yield pf.getPortPromise({ port, stopPort: port }) en yield pf.getPortPromise({ port, stopPort: port + 1 }).

EDIT: Comme suggéré par Mladen Skrbic, afin de trouver le dossier firebase-tools, Vous devez exécuter npm root -g Et y trouver le dossier firebase-tools.

Cela devrait résoudre le problème!

4
Wendigo

il suffit d'exécuter la commande firebase serve --fonctions uniquement --Host 0.0.0.0

2
Geetanshu Gulati

Au lieu des dernières fonctions firebase (qui est actuellement la 3.2.0), le forçant à rester à 3.0.2 résolu dans mon cas.

"dependencies": {
    "firebase-admin": "^8.2.0",
    "firebase-functions": "3.0.2",
    ...
}

(J'utilise également la version 7.0.2 de firebase-tools atm, je ne l'ai pas vérifié avec la dernière version. Si cela ne fonctionne pas, essayez de rétablir firebase-tools en 7.0.2)

2
Mertcan Çüçen

où se trouve? node_modules/firebase-tools/lib/emulator/controller.js Je ne trouve pas le dossier "firebase-tools" dans node_modules. Je ne trouve que des funbions-firebase et des firebase-admin.

1
meltedmoon

Cela a fonctionné pour moi.

Redémarrez simplement votre système.

1
biggest_boy

Une solution rapide npm i -g [email protected]

1
J Krumov

SOLUTION À: Erreur de service Firebase: le port 5000 n'est pas ouvert. Impossible de démarrer l'émulateur de fonctions

Si vous obtenez l'un des messages d'erreur suivants lorsque vous exécutez Firebase, vous pouvez facilement résoudre le problème en passant à une autre version des outils Firebase.

Le port 5000 n'est pas ouvert, impossible de démarrer l'émulateur de fonctions.

Si vous utilisez la version 6 de Firebase Tools, vous pouvez passer à la dernière version (6.12.0) ou essayer la version 7.2.2. Pour passer à la version des outils Firebase, exécutez la commande suivante du gestionnaire de packages de nœuds.

npm install -g [email protected].

0
Chidi-Nwaneto