Ce guide explique comment préparer un service Web pour l'exécuter dans un conteneur sur Cloud Run. Il ne couvre pas la migration des données.
Identifier le port sur lequel votre code écoute
Votre service doit écouter les requêtes sur un port spécifique. Vous devez identifier ce port et configurer Cloud Run pour qu'il envoie les requêtes sur ce port-là.
C'est le même port que celui que vous utiliseriez pour appeler votre service sur votre machine locale. Par exemple, si vous devez accéder à l'adresse localhost:3000
pour tester votre code, alors vous devez définir le port du conteneur sur 3000
dans Cloud Run.
Par défaut, Cloud Run envoie les requêtes sur le port 8080
.
La valeur du port sur lequel les requêtes sont envoyées est toujours disponible dans la variable d'environnement PORT
. Si possible, adaptez votre code pour qu'il écoute sur le port dont la valeur est définie par la variable d'environnement PORT
.
Supprimer la dépendance au système de fichiers local pour le stockage persistant
Vérifiez si le code de votre application dépend des systèmes de fichiers locaux et utilisez un stockage de fichiers sur Cloud Storage ou un stockage de données tel que Firestore ou Cloud SQL à la place.
Ajouter un fichier Dockerfile
Pour intégrer votre service dans un conteneur, vous devez utiliser un fichier Dockerfile permettant de définir l'environnement d'exploitation. Le guide de démarrage rapide Créer et déployer présente quelques fichiers Dockerfile de base que vous pouvez utiliser pour commencer.
Pour en savoir plus sur la personnalisation de votre fichier Dockerfile
, consultez la page Développer votre service.
Régler la simultanéité et les limites de mémoire
Pour en savoir plus sur le fonctionnement de la simultanéité et optimiser ce paramètre pour votre service, consultez les conseils de développement pour le réglage de la simultanéité.
Assurez-vous que votre limite de mémoire est suffisante pour que votre application puisse s'exécuter, ainsi que la capacité de stockage de fichier temporaire requis par votre service.
Envoyer des journaux vers stdout, stderr ou /var/log
Cloud Run utilise automatiquement Google Cloud Observability pour agréger et examiner vos journaux, comme décrit sur la page Journalisation.