2017-01-18 5 views
0

я бег Датастор эмулятора, и я получаю следующий кажущийся правильный журнал консолиПочему переменные env для эмулятора хранилища данных обнаружены неправильно?

> 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 окна, в то время как эмулятор работает, я запускаю следующее, или же я остановить эмулятор первым. В любом случае, он производит другой порт и другой проект:

> 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 

Что происходит не так? Как это исправить?

ответ

3

Используйте тот же каталог данных при запуске команды env-init. Например:

gcloud beta emulators datastore env-init --data-dir=./gcloud_datastore 

При запуске эмулятора с помощью команды start, он создает/обновляет файл env.yaml в указанном каталоге данных. Этот файл содержит информацию об окружающей среде (например, порт, название проекта), которая, как мне кажется, используется командой env-init.