結論
firebase.json
に
"emulators": {
"functions": {
"host": "0.0.0.0"
},
"firestore": {
"host": "0.0.0.0"
},
"database": {
"host": "0.0.0.0"
},
"hosting": {
"host": "0.0.0.0"
}
}
を追加しましょう。
経緯
Firebaseによる開発を加速するためにFirebase Local Emulator Suiteを導入しました。Firebaseのローカルでの開発環境を整えるうえで最大の課題はFirestoreのエミュレーションをどうするかですが、Firebase Local Emulator Suiteではうまくやれそうです。
HostingやCloud Functionsも当然のことながらエミュレートするのですが、当方の開発環境は仮想マシン上に構築しているため、ネットワーク越しのアクセスとなります。ところが、
firebase emulators:start --help
としてみても
Usage: firebase emulators:start [options]
start the local Firebase emulators
Options:
--only <emulators> only specific emulators. This is a comma separated list of emulator names. Valid
options are: ["functions","firestore","database","hosting","pubsub"]
--inspect-functions [port] emulate Cloud Functions in debug mode with the node inspector on the given port
(9229 if not specified)
--import [dir] import emulator data from a previous export (see emulators:export)
-h, --help output usage information
となっておりホストの設定オプションがない。こちらのStack Overflowの記事に助けられました・・・。
その後かろうじてソースコード内にドキュメントらしきものを発見しました。めでたしめでたし(?)