2 votes

API dans Cloud Run et proxy inverse Nginx dans VM

J'ai déployé 6 applications différentes basées sur Flask sur Google Cloud Run. Elles fonctionnent parfaitement lorsque j'y accède via l'URL autogénérée. Maintenant, je veux unifier les 6 services sous un seul nom de domaine avec des itinéraires différents.

Par exemple,
mydomain.com/user -> https://custom-user-asdtgthyju-de.a.run.app
mydomain.com/product -> https://custom-product-asdtgthyju-de.a.run.app

Ce que j'ai essayé
1. Nginx déployé dans une VM séparée avec un proxy inverse vers les URLs du nuage
Cela ne fonctionne pas, la même configuration - le même code déployé dans des VM normales fonctionne, mais pour les déploiements dans le nuage, la route "/user" n'est pas trouvée.

2. Points d'extrémité en nuage utilisant ESPv2
https://cloud.google.com/endpoints/docs/openapi/get-started-cloud-run
J'ai réussi à le faire fonctionner selon mes besoins, mais je ne peux pas passer les en-têtes personnalisés, comme j'utilise X-API-KEY pour l'authentification, il n'arrive même pas à l'exécution du Cloud. Il est supprimé par ESPv2 lui-même.

Comment puis-je configurer un proxy inverse/une passerelle API devant les services exécutés dans le nuage ? Est-ce que quelqu'un a essayé Nginx externe à Cloud Run cartographie ?

Gracias

2voto

petomalina Points 1820

La façon la plus simple d'obtenir un domaine unique avec routage d'URL serait d'utiliser Firebase Hosting et sa redirection vers Cloud Run . Vous pouvez ajouter votre domaine à l'hébergement Firebase et rediriger vers un service Cloud Run particulier en fonction de sa source (URL).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X