J'ai une application Google App Engine qui s'exécute dans une URL personnalisée xxx.org. Je peux déployer une version mise à jour à l'aide du lanceur graphique GAE, uniquement en cliquant sur le bouton «Déployer». Pourtant, j'essaie maintenant d'apprendre à utiliser la machinerie gcloud
puisque le lanceur ne fonctionnera plus après le 30 juillet 2020. Je suis perplexe quant à la façon de déployer en utilisant le gcloud
déploiement de l'application.
J'ai essayé beaucoup de choses sur la base d'indices dans la documentation et les discussions disponibles sur le Web, mais tout ce que je peux obtenir, ce sont des messages d'erreur incompréhensibles. Je suppose que je dois modifier mon fichier app.yaml. Quelqu'un peut-il me donner des instructions très explicites sur ce que je dois faire? (Je dois dire que j'ai appris à exécuter localement en utilisant les commandes gcloud plutôt que le lanceur, mais je ne peux pas déployer.)
3 Réponses :
Si la commande gcloud
est nouvelle pour vous, vous pourriez peut-être envisager de suivre l'un des bons tutoriels publiés sur Google Cloud docs , avec une nouvelle application démo
simple, dans un nouveau projet isolé, juste pour valider que vous êtes en mesure de déployer à l'aide de la commande gcloud app deploy
.
Tout d'abord, je vous suggère de vérifier si gcloud sdk
est correctement installé et configuré. Pour cela, vous pouvez suivre cette procédure:
Une étape importante est gcloud init
qui initialisera votre configuration et définira votre projet par défaut, avec également vos identifiants. (authentification).
Après cette procédure, la commande gcloud config list
devrait récupérer les propriétés de certains environnements, au moins:
[core] account = your@email project = your-project-id Your active configuration is: [your-project-id]
your-project-id
est l'identifiant de votre projet dans GCP. Consultez console.cloud.google.com
pour plus de détails et une vue ergonomique de l'interface utilisateur.
Ceci est la base. Inutile d'aller plus loin, si cela ne fonctionne pas bien à ce stade.
Domaines personnalisés
À propos des domaines personnalisés, pas de lien réel avec déployer l'application gcloud
. Il vous suffit d'ajouter un mappage et de mettre à jour les enregistrements DNS. Mais il semble que cela soit déjà fait, car votre application est déjà active.
Suivez cette procédure officielle (avec gcloud
) pour ajouter un mappage.
Vérifiez la réponse de Daniel avec un bon détail de chaque étape que vous devez suivre.
1) Je peux déployer en cliquant sur le bouton «Déployer» dans le lanceur graphique alors que 2) malgré la lecture de nombreux documents et en essayant beaucoup de choses, je ne sais pas quelles commandes gcloud émettre pour obtenir le même effet. Actuellement, lorsque j'accède à mon application et que j'exécute gcloud app deploy, j'obtiens "ERREUR: (gcloud.app.deploy) Erreur d'autorisation lors de la récupération de l'application [apps / devbashero]. Veuillez vous assurer que vous utilisez l'ID de projet correct et que vous êtes autorisé à afficher les applications sur le projet. " Je ne sais pas ce qu'est un "ID de projet", ni quoi en faire si je trouve ce que c'est.
Je viens de modifier ma réponse. Project-id est l'identifiant de votre projet dans GCP. Cela signifie que votre environnement n'est pas correctement configuré. Veuillez suivre attentivement la procédure GCP (lien dans ma réponse). Pensez également à suivre un tutoriel de démarrage sur GCP avant d'aller plus loin.
Mais comment expliquer que le bouton "Déployer" du lanceur fonctionne, si mon environnement n'est "pas correctement configuré"? Et j'ai parcouru le didacticiel, mais je n'ai pas réussi à trouver là ou dans le matériel de référence quoi que ce soit sur la façon d'utiliser gcloud app deploy dans le cas d'une URL personnalisée.
D'accord, je suis allé un peu plus loin. J'ai réussi à exécuter gcloud app deploy sans recevoir de message d'erreur, mais il s'est déployé sur l '"URL cible" devbasherwo.appspot.com < / a> au lieu de devbasherwo.org . Alors maintenant, ma question se résume peut-être à la manière de définir une "URL cible", ce que je n'ai pas encore trouvé comment faire.
En supposant que l'application peut être déployée avec le domaine personnalisé, cela signifie que le mappage est déjà effectué et que les enregistrements DNS ont été mis à jour. Néanmoins, vous pouvez trouver toute la documentation importante [ici]. ( https : //cloud.google.com/appengine/docs/standard/python/mapping-custom-domains )
Un simple résumé utilisant les commandes gcloud
pour mapper le domaine personnalisé comprendrait:
domaines gcloud verify example.com
Liste de domaines gcloud vérifiée par l'utilisateur
Déléguez la propriété aux utilisateurs ou comptes de service concernés utilisés par votre application via la page Webmaster Central.
Créez le mappage:
Les mappages de domaine d'application gcloud créent '* .example.com'
Après avoir testé que vous pouvez utiliser votre application via le domaine personnalisé (dans ce cas www.example.com
), il n'y a pas grand-chose à faire concernant l'utilisation de l'application gcloud déployer
. Mais notez que si vous utilisez des caractères génériques pour mapper des sous-domaines avec des services à n'importe quel niveau, vous devrez utiliser un fichier dispatch.yaml . Dont vous devez déployer avec la commande gcloud app deploy dispatch.yaml
.
Vous ne pouvez pas déployer vers une URL "spécifique". Vous déployez sur un projet spécifique via la commande
gcloud app deploy {chemin vers votre fichier app.yaml} --project = {PROJECT_NAME}
Par ailleurs, vous auriez mappé votre adresse ".appspot.com" avec votre domaine personnalisé sur la page des paramètres App Engine
Veuillez ne pas promouvoir votre propre contenu dans les réponses à moins qu'il ne soit pertinent pour la question. Si vous faites cela, vous serez considéré comme un spammeur.
Avez-vous eu l'occasion de lire la documentation sur le déploiement d'applications sur GAE disponible ici? cloud.google.com/appengine/ docs / flexible / nodejs /… ... si quelque chose ne fonctionne pas, décrivez peut-être ce que vous pensez, ce que vous essayez et ce que vous vivez.
Oui, j'ai lu la documentation et j'ai cherché sur le Web. Ce que je recherche, c'est un exemple simple et explicite de ce à quoi ressemble une instruction «gcloud app deploy» lorsque le site Web est xxx.org, pas la valeur par défaut xxx.appspot.com (je ne me suis peut-être pas souvenu de cette dernière URL ). Non seulement je suis perplexe quant à la forme de cette déclaration, mais je ne comprends pas non plus ce que je dois changer dans mon fichier app.yaml et si je suis également obligé d'avoir en plus un autre fichier .yaml.