Сегодня наши контейнеры для разработки начали выдавать ошибки и ошибки при запуске стандартной среды разработки App Engine (GAE) из Google Cloud SDK.
ERROR 2017-12-15 09:38:37,766 http_runtime.py:396] bad runtime process port ['']
Traceback (most recent call last):
File "/opt/google-cloud-sdk/platform/google_appengine/_php_runtime.py", line 103, in <module>
_run_file(__file__, globals())
File "/opt/google-cloud-sdk/platform/google_appengine/_php_runtime.py", line 97, in _run_file
execfile(_PATHS.script_file(script_name), globals_)
File "/opt/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/php/runtime/runtime.py", line 39, in <module>
from google.appengine.tools.devappserver2 import wsgi_server
File "/opt/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/wsgi_server.py", line 34, in <module>
import ipaddr
ImportError: No module named ipaddr
Похоже, что это было вызвано обновлением до последней версии SDK, которое произошло автоматически.
Временное решение для MacOS, скопируйте ipaddr.py
подать в <google-cloud-sdk>/platform/google_appengine
В Ubuntu 14.04, которую мы используем для соответствия версии GAE PHP 5.5, модуль python, который они пытаются использовать, по умолчанию не установлен.
Мы установили его с:
# apt install python-ipaddr
Похоже, это связано с функцией, которую они ввели для проверки узлов, чтобы предотвратить атаки повторного связывания DNS.
В Windows 10 я скопировал файл ipaddr.py
от https://github.com/google/ipaddr-py в Google\Cloud SDK\google-cloud-sdk\platform\bundledpython\Lib\
папка и все заработало.
Не опытный программист Python, так что я не уверен, что это лучшее место, где можно найти пропавших без вести ipaddr.py
файл, но это работает.
Это произошло после обновления GoogleAppEngine-1.9.65 в моей Windows 7, и, похоже, в папке C: \ Program Files (x86) \ Google \ google_appengine \ lib \ ipaddr \ ipaddr отсутствует файл ipaddr.py.
Мне пришлось скачать IPADDR-2.2.0.tar.gz затем распакуйте его и выполните следующую команду, чтобы установить его.
python setup.py install
Надеюсь это поможет.