为什么未正确检测到数据存储模拟器的环境变量?
Why are the env variables for the Datastore Emulator incorrectly detected?
我 运行 数据存储模拟器,我得到以下明显正确的控制台日志
> gcloud beta emulators datastore start --project=myproj --data-dir "./gcloud_datastore"
[datastore] If you are using a library that supports the DATASTORE_EMULATOR_HOST environment variable, run:
[datastore]
[datastore] export DATASTORE_EMULATOR_HOST=localhost:8232
[datastore]
[datastore] Dev App Server is now running.
在另一个 cmd window 中,当模拟器处于 运行ning 时,我 运行 以下,或者我先停止模拟器。无论哪种方式,它都会产生不同的端口和不同的项目:
> gcloud beta emulators datastore env-init
set DATASTORE_DATASET=anotherproj
set DATASTORE_EMULATOR_HOST=localhost:8297
set DATASTORE_EMULATOR_HOST_PATH=localhost:8297/datastore
set DATASTORE_HOST=http://localhost:8297
set DATASTORE_PROJECT_ID=anotherproj
出了什么问题?我该如何解决这个问题?
在运行 env-init
命令时使用相同的数据目录。例如:
gcloud beta emulators datastore env-init --data-dir=./gcloud_datastore
当您使用 start
命令启动模拟器时,它 creates/updates 一个文件 env.yaml
在指定的数据目录中。该文件包含环境信息(例如端口、项目名称),我相信 env-init
命令会使用这些信息。
我 运行 数据存储模拟器,我得到以下明显正确的控制台日志
> gcloud beta emulators datastore start --project=myproj --data-dir "./gcloud_datastore"
[datastore] If you are using a library that supports the DATASTORE_EMULATOR_HOST environment variable, run:
[datastore]
[datastore] export DATASTORE_EMULATOR_HOST=localhost:8232
[datastore]
[datastore] Dev App Server is now running.
在另一个 cmd window 中,当模拟器处于 运行ning 时,我 运行 以下,或者我先停止模拟器。无论哪种方式,它都会产生不同的端口和不同的项目:
> gcloud beta emulators datastore env-init
set DATASTORE_DATASET=anotherproj
set DATASTORE_EMULATOR_HOST=localhost:8297
set DATASTORE_EMULATOR_HOST_PATH=localhost:8297/datastore
set DATASTORE_HOST=http://localhost:8297
set DATASTORE_PROJECT_ID=anotherproj
出了什么问题?我该如何解决这个问题?
在运行 env-init
命令时使用相同的数据目录。例如:
gcloud beta emulators datastore env-init --data-dir=./gcloud_datastore
当您使用 start
命令启动模拟器时,它 creates/updates 一个文件 env.yaml
在指定的数据目录中。该文件包含环境信息(例如端口、项目名称),我相信 env-init
命令会使用这些信息。