Чего я хочу достичь Итак, используя Cloud Run, я хотел достичь следующего:
- Вызов функции Firebase Cloud (FCF)
- FCF делает вызов другой службы API и получение определенного значения
{bar:baz}
- FCF вызывает конечную точку Cloud Run со значением как params
- Cloud Run, который был создан и развернут с помощью Docker Образ CLI Firebase запускается
- в Cloud Run, он выполняет команды
firebase functions:config:set foo.bar=baz
- Успешно обновляет переменные среды FCF как
foo.bar=baz
Проблемы
, о которых здесь говорилось ранее, Google Cloud Run - запуск сценария оболочки в проекте firebase и с решениями, которые были предоставлены @guillaume blaquiere, я наконец дошел до того, что Я запускаю такие команды, как firebase --version
или firebase projects:list
, и они отлично работают, поскольку информация выводится в браузере.
Однако, когда я запускаю такие команды, как firebase use project test123
или firebase functions:config:set foo.bar=baz
, Cloud Run выдает ошибка exec error: exit status 1
* 103 6 *
Исходный код # Dockerfile
FROM node
RUN npm i -g firebase-tools
ADD my_script.sh /
COPY --from=msoap/shell2http /app/shell2http /shell2http
RUN chmod +x my_script.sh
ENTRYPOINT ["/shell2http","-export-all-vars"]
CMD ["/update","/my_script.sh"]
#my_script.sh
#!/bin/sh
firebase --token $TOKEN use foobarbaz-123
firebase functions:config:set foo.bar=baz
при сборке образа с помощью gcb
gcloud builds submit --tag gcr.io/foobarbaz-123/testbash
при развертывании
gcloud run deploy --image gcr.io/foobarbaz-123/testbash --platform managed
или развертывание с помощью токена, полученного от firebase login:ci
gcloud run deploy --image gcr.io/foobarbaz-123/testbash --platform managed --set-env-vars=TOKEN=foobarbaz12345
где мне нужно исправить? Любые советы или предложения будут оценены