Я запускаю приложение JS для узла в облачных сервисах Google, используя облачную оболочку. Я развернул с помощью gcloud app deploy , все сообщает об успехе. Если я использую Журналы приложений gcloud tail -s по умолчанию Я вижу журналы, в которых говорится, что мое приложение прослушивает порт 3000, это первое отладочное сообщение, которое я вижу из своего приложения.
Когда я вызываю конечную точку без порта на конце, т.е.
https://myapp.appspot.com/myendpoint
Я получаю ошибку,
"GET / myendpoint" 502
Если я попробую с портом 3000, т.е.
https://myapp.appspot.com:3000/myendpoint
Запрос просто истекает, и я не получаю сообщения журнала от оболочки.
У меня открыт порт 3000 на брандмауэре, и мой app.yaml есть,
runtime: nodejs
env: flex
service: default
manual_scaling:
instances: 1
resources:
cpu: 1
memory_gb: 0.5
disk_size_gb: 10
Обновление 1:
Я также попытался добавить порт переадресации в свой app.yaml,
network:
forwarded_ports:
- 3000/tcp
И разрешил порт 3000 в брандмауэре VPC, но, похоже, это не имеет значения.
Обновление 2:
Я могу подключиться к экземпляру по SSH и получить доступ к конечной точке с помощью команды wget http://127.0.0.1:3000/myendpoint, но внешний доступ по-прежнему отсутствует.
Обновление 3:
Я также попробовал порт 443, прослушивая IP 0.0.0.0. Но он, кажется, связывается с IP-адресом IPV6 0 и изменяет порт на 8443 (как-то). Это просто безумие ...