Ejecutándose en un contenedor docker con los puertos 9005 disponibles para el sistema operativo host y cuando ejecuto
base de fuego servir -p 9005
y luego intente acceder a esto desde el sistema operativo host (ventanas)
usando http://localhost:9005 obtengo una respuesta vacía
para obligar a que Firebase Serve sea visible, debe especificarlo para obligarlo a vincularse a la dirección 0.0.0.0; de lo contrario, el vínculo predeterminado es localhost
así que tienes que correr
servicio base de fuego -p 9005 -o 0.0.0.0
Asegúrese de que 9005 esté expuesto y publicado mediante la opción de línea de comandos de la ventana acoplable -p
Para su host es localhost, por ejemplo, 127.0.0.1, para el contenedor docker es localhost, tal vez 127.0.0.1 también. ¡Pero no son lo mismo, son dos cosas diferentes!
Debe configurar un proceso que se ejecuta en un contenedor docker para usar todas las interfaces, esto se llama 0.0.0.0, este no es el host local.
firebase serve -p 9005 -o 0.0.0.0 Luego, debe exponer el puerto, en el ejemplo anterior 9005 . Consulte https://docs.docker.com/engine/reference/commandline/run/#publish-or-expose-port--p---expose
docker run --expose 9005 $CONTAINER $PARAMSo en el Dockerfile con algo así:
EXPOSE 9005/tcp EXPOSE 9005/udpConsulte aquí: https://docs.docker.com/engine/reference/builder/#expose