Guide de déploiement Francfort, Allemagne

Déployez Docker Compose sur Nodion

Nodion peut lire un docker-compose.yml une seule fois, à la création de l'app : les bases de données et les caches deviennent des services managés, et les autres services deviennent les processus d'une seule app. L'import est expérimental : vérifiez donc le plan avant de créer l'app. Tout tourne ensuite à Francfort.

Déployer sur Nodion ›

à partir de 1 EUR / mois

Jusqu'à 15 € de crédit de bienvenue à l'inscription

Lit
docker-compose.yml ou compose.yml, une fois à la création
Crée
Une app avec des processus, des bases de données managées
Statut
Expérimental
Région
EU Central (Francfort)

Déployez Docker Compose étape par étape

  1. Vérifiez votre fichier Compose Nodion lit docker-compose.yml, docker-compose.yaml, compose.yml ou compose.yaml, en prenant le fichier le plus proche de la racine du dépôt. Il faut au moins un service applicatif en plus des bases de données et des caches ; un fichier qui ne contient que des bases de données et des caches est ignoré. docker-compose.yml
    services:
      web:
        build: .
        environment:
          DATABASE_URL: postgres://app:app@db:5432/app
          REDIS_URL: redis://cache:6379
      db:
        image: postgres:17
      cache:
        image: valkey/valkey:8
  2. Choisissez Docker Compose à la création de l'app Créez une application depuis votre dépôt dans la région EU Central. Quand l'analyse trouve un fichier Compose exploitable, une option Docker Compose apparaît ; elle n'est jamais présélectionnée. Choisissez-la et vérifiez le plan : avant la création, vous pouvez encore choisir la taille et le nombre d'instances par processus et ajuster la taille des volumes.
  3. Vérifiez quels services deviennent managés Nodion se fie au nom de l'image : postgres et postgis deviennent Managed PostgreSQL, pgvector devient pgvector, redis et valkey deviennent Valkey, mysql et mariadb deviennent MySQL, clickhouse devient ClickHouse et minio devient un bucket. Tout autre service exécute son image comme processus de cette app unique. Le tag de l'image ne détermine pas la version de la base de données, et les utilisateurs et mots de passe sont fournis par Nodion. Managed PostgreSQL n'a pas l'extension PostGIS : une app qui a besoin de PostGIS perd donc ses fonctions spatiales après l'import ; laissez une telle base de données en dehors du fichier Compose.
  4. Vérifiez les variables de connexion Une variable du service applicatif qui désigne un autre service par son nom, comme @db:5432 ci-dessus, devient un rattachement : Nodion injecte la vraie adresse au déploiement. Sinon, les bases de données arrivent en tant que DATABASE_URL et Valkey en tant que REDIS_URL. Parmi les autres variables, seules celles du service applicatif principal sont copiées, et les valeurs qui ressemblent à des secrets sont marquées comme secrets.
  5. Gérez ensuite l'app dans le dashboard Le premier déploiement attend que les bases de données soient prêtes. Ensuite, le fichier Compose n'est plus lu : chaque push construit l'app avec la stratégie Dockerfile ou buildpacks trouvée dans le même dépôt, et vous modifiez les processus, les variables et les tailles dans le dashboard.

Bon à savoir

  • Expérimental et ponctuelL'import est un raccourci pour la première mise en place, pas un runtime Compose. Si votre fichier ne se convertit pas proprement, recréez la même configuration à la main : une app, une base de données rattachée dans l'onglet Environment et des processus supplémentaires dans l'onglet Processes.
  • Ce que Nodion ignoreLes réseaux, les profils, les healthchecks Compose, depends_on comme ordre de démarrage, deploy.replicas, les bind mounts et les volumes anonymes. Un deuxième service avec son propre build: partage l'unique image de l'app.
  • VolumesLes volumes nommés deviennent des volumes Nodion, de 5 Go par défaut et modifiables dans le plan, montés sur les processus qui les utilisent.

Ce que Nodion gère pour vous

  • Déploiements sans interruption Faites un push sur votre branche : Nodion construit une nouvelle release. Le trafic bascule lorsque les nouvelles instances réussissent leur health check ; si la release échoue, celle en cours reste active. Les apps avec un volume local redémarrent, car le disque appartient à une seule instance.
  • Bases de données à côté de l'app PostgreSQL, pgvector, MySQL, Valkey et ClickHouse managés, dans la même région. Les bases de données rattachées arrivent sous forme de DATABASE_URL, REDIS_URL ou CLICKHOUSE_URL.
  • Previews par pull request Activez les previews, et les pull requests de votre dépôt obtiennent leur propre app, avec sa propre URL et des bases de données neuves et vides, créées automatiquement ou à la main. Les pull requests issues de forks ou de bots sont ignorées.
  • Workers, cron jobs et mise à l'échelle Exécutez les workers comme processus supplémentaires de la même app, planifiez des tâches dans l'onglet Cron et mettez chaque processus à l'échelle jusqu'à 16 instances.
  • Étape de release Avec les buildpacks, une ligne release: du Procfile s'exécute à chaque nouveau build. Les apps Dockerfile, ainsi que les redéploiements ou les rollbacks vers une image antérieure, utilisent une commande de release définie sur l'app elle-même, qui prime aussi sur la ligne du Procfile. Sur les sites statiques, l'étape de release s'exécute dans une image qui ne contient que les fichiers générés par le build.
  • Logs et métriques Logs de build, de release et d'exécution, ainsi que les métriques CPU, mémoire, disque et réseau de chaque instance, dans le dashboard.
  • Domaines et HTTPS Un nom d'hôte par défaut avec HTTPS dès le premier déploiement, et des certificats automatiques pour vos propres domaines.

Pour aller plus loin

Docker Compose sur Nodion : questions et réponses

Nodion exécute-t-il docker compose up ?

Non. Nodion lit le fichier une seule fois, à la création de l'app, et le transforme en une app avec des processus, des bases de données managées et des volumes. Il ne fait pas tourner de projet Compose, n'applique pas les réseaux et ne relit pas le fichier.

Les modifications de mon fichier Compose s'appliquent-elles au déploiement suivant ?

Non. Après la création, vous gérez l'app dans le dashboard : c'est là que vous ajoutez un processus, une variable ou une base de données. Modifier le fichier Compose dans Git ne change rien.

Que deviennent MongoDB et les autres services sans version managée ?

Ils exécutent leur image comme processus de l'app. Nodion ne propose pas de MongoDB managé : vous gérez donc vous-même un tel service et ses données.

Quelle version de base de données vais-je obtenir ?

La version par défaut actuelle de Nodion pour ce moteur, pas celle du tag de votre image. Si vous avez besoin d'une version précise, laissez la base de données en dehors du fichier Compose, créez-la dans le dashboard et rattachez-la à l'app.

Où tourne mon app Docker Compose ?

Dans la région EU Central, à Francfort (Allemagne). Le build, le registry, l'app et ses bases de données, volumes, buckets, logs et métriques restent dans cette région. L'API et le plan de contrôle de Nodion sont hébergés en Allemagne. Nodion GmbH a son siège à Stuttgart.

Puis-je utiliser Docker Compose en conformité avec le RGPD ?

Nodion en pose les bases : Nodion GmbH a son siège à Stuttgart (Allemagne). Dans la région de Francfort, l'app, ses bases de données et ses volumes fonctionnent en Allemagne. Vous concluez le DPA (accord de traitement des données, art. 28 RGPD) par voie électronique dans le dashboard. La conformité de votre déploiement dépend aussi de la façon dont vous configurez et utilisez l'app.

Combien coûte l'hébergement Docker Compose sur Nodion ?

Une instance d'app coûte à partir de 1 EUR par mois. La configuration présentée dans l'encadré des coûts revient à 3.50 EUR par mois : App 2 EUR, PostgreSQL 1.50 EUR. Les prix sont HT, avec une facturation à la seconde. Vous pouvez choisir des tailles plus grandes ou davantage d'instances dès que vous en avez besoin.

Puis-je utiliser mon propre domaine pour mon app Docker Compose ?

Oui. Chaque app reçoit un nom d'hôte par défaut avec HTTPS. Ajoutez votre propre domaine dans l'onglet Domains de l'app. Le certificat TLS est émis et renouvelé automatiquement.

Offrez un cloud à votre agent.

Jusqu'à 15 € de crédit de bienvenue à l'inscription.

Continuer avec GitHub

ou par e-mail

Restez informé.

Les nouveautés du produit, sans spam. Désabonnez-vous à tout moment.