New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support connecting to firestore emulator running on separate container/machine #335
Comments
Same thing happened for my team. We'd been using the python firebase-admin library for one of our services, and running the emulators in a Docker container for local development and integration tests in our CI/CD pipelines. This change in v2.1.0 broke the local setups and the pipelines. We have strict versioning for all the higher level dependencies, but the firebase-admin library always uses the latest of this library so it didn't matter much. |
Having the same issue. Pinning |
If you are also using the |
Thanks for reporting this, @rpeach, especially with the detailed explanation. Since #402, which was released in version Would you mind re-checking your set up against version |
With the change in e28272a, I can confirm this is now working for my project. Unfortunately, this -> #359 (comment) is now the issue blocking me, but I'll post my problems there |
I believe the question has been answered so I'm going to close this. :) |
From what I can tell the firestore client has to be running on the same machine as the emulator, otherwise you end up with a gRPC error:
endpoint is neither UDS or TCP loopback address
This makes running the firestore client and emulator in different docker containers impossible (well not exactly - see the monkeypatch).
The reason that this happens is that the client creates local_credentials which gRPC enforces are only used for connections via the loopback adapter or unix sockets.
Description of my setup:
docker container1: Our app which connects to firestore emulator
docker container2: firestore emulator
Possible solutions:
My initial thoughts are: just use insecure channel, it is only the emulator. But that might be missing something.
For anyone seeing this issue and wondering if there is a temporary workaround, I'm using this monkeypatch for our testing setup:
The text was updated successfully, but these errors were encountered: