Component Configuration

À quoi sert cet écran

Les réglages d’un composant : ports, image, variables d’environnement, volumes, réseaux et sidecars. C’est là que réside l’essentiel du détail d’une application.

Avant de commencer

Pour faire ceci Il vous faut
Ouvrir App Builder la permission d’accès App Builder

Ouvrir l’écran

Cliquez sur n’importe quel composant du canevas.

Cliquez sur un composant sur le canevas pour ouvrir le modal Component Configuration. Il contient plusieurs onglets pour configurer différents aspects du composant. Les modifications sont enregistrées lorsque vous fermez le modal et sauvegardez l’application.

📸 Capture d’ecran : La fenêtre de configuration d’un composant sur l’onglet General. Repères : (1) la barre d’onglets, (2) le champ des ports, (3) la liste Connected Components, (4) l’action Add Sidecar.

General Tab

Configurez les ports et visualisez les composants connectés.

Ports

Définissez les ports exposés par le conteneur.

  • Saisissez un port (3000) ou un mappage hôte:conteneur (8080:3000) et cliquez sur “Add”
  • Les ports apparaissent comme des chips ; cliquez sur X pour les supprimer
  • Les ports par défaut du modèle de composant sont pré-remplis
  • Ces ports correspondent aux mappages de ports Docker Compose

Connected Components

Affiche tous les composants connectés via les arêtes du canevas (nom et type).

Add Sidecar

Disponible pour tous les composants sauf les sidecars. Ajoute un conteneur sidecar auxiliaire automatiquement lié à ce composant. Le sidecar hérite des suggestions de configurations de stockage du parent.

Image Tab

Configurez la source de l’image Docker pour le composant.

Champ Requis Description Exemple
Registry Non URL du registre Docker (par défaut : Docker Hub) ghcr.io, docker.io
Repository Non Chemin de l’organisation ou du dépôt myorg, fenwave
Image Oui Nom de l’image api-server, nginx, postgres
Tag Non Tag de version (par défaut : latest) v1.2.3, sha-abc123def

La référence complète est construite ainsi : {registry}/{repository}/{image}:{tag} et utilisée dans les configurations Docker Compose générées.

Container Tab

Configurez les paramètres d’exécution du conteneur.

Restart Policy

Option Comportement
No Ne jamais redémarrer
Always Toujours redémarrer lorsqu’il s’arrête
On Failure Redémarrer uniquement en cas de sortie non nulle
Unless Stopped Toujours redémarrer sauf si explicitement arrêté

Hostname

Définissez un hostname personnalisé pour le conteneur. Laissez vide pour le hostname par défaut de Docker.

Mount Docker Socket

Basculez pour monter /var/run/docker.sock dans le conteneur. Avertissement de sécurité : n’activez que pour les conteneurs nécessitant l’accès au daemon Docker (runners CI/CD, scénarios Docker-in-Docker).

User

Spécifiez l’utilisateur (ou user:group) qui exécute les processus du conteneur. Formats : 1000, 1000:1000, node, node:node. Laissez vide pour l’utilisateur par défaut de l’image.

Commands

Remplacez le CMD/ENTRYPOINT par défaut du conteneur.

  • Mode simple : Ajoutez les commandes une par une
  • Bulk Import : Passez au format liste YAML pour l’import en masse : ```yaml
    • ’–log.level=DEBUG’
    • ’–accesslog=true’ ```

Chaque entrée devient un argument séparé dans le tableau de commandes Docker.

Labels

Ajoutez des labels de métadonnées Docker en paires clé-valeur (ex. traefik.enable=true, app.version=1.0.0). Les labels apparaissent dans docker inspect et peuvent être utilisés par des outils d’orchestration comme Traefik.

Resource Limits

Champ Description Exemple
Memory Reservation Limite souple — mémoire minimum garantie 128M, 1G
Memory Limit Limite stricte — conteneur tué (OOM) si dépassée 512M, 2G

Définissez la réservation à l’utilisation typique et la limite à l’utilisation de pointe.

Storage Tab

Configurez le stockage persistant : volumes nommés et bind mounts.

Volume Mounts (Volumes nommés)

Stockage persistant qui survit aux redémarrages du conteneur. Utilisez pour les données de base de données, les caches, les logs ou les fichiers téléchargés.

Champ Requis Description Exemple
Volume Name Oui Nom du volume Docker db-data, uploads
Mount Path Oui Chemin à l’intérieur du conteneur /var/lib/postgresql/data
Size Non Taille du volume 10Gi, 500Mi

Bind Mounts

Mappez des répertoires hôte ou des fichiers générés dans le conteneur.

Mode Generated Content : Créez un fichier de configuration avec du contenu en ligne, monté au chemin conteneur spécifié. Utile pour générer des fichiers de config dynamiquement (ex. /app/config/database.json).

Mode Existing Host Path : Montez un répertoire hôte existant dans le conteneur. Sélectionnez rw (lecture-écriture) ou ro (lecture seule) comme option de montage.

Suggested Mounts (Sidecar uniquement)

Pour les composants sidecar, cette section affiche les montages suggérés hérités du parent. Cliquez sur + pour adopter une suggestion. Utile pour la collecte de logs partagée, les caches ou les fichiers de configuration.

Network Tab

Networks

Configurez des réseaux Docker personnalisés pour la communication inter-conteneurs.

Réseaux intégrés : bridge, host, none

Pour les réseaux personnalisés, spécifiez un nom, un driver (bridge, host, overlay, macvlan) et des aliases optionnels (noms DNS alternatifs au sein du réseau).

Les composants sur le même réseau peuvent communiquer via les noms de service. Plusieurs réseaux peuvent être assignés au même composant.

Dependencies (depends_on)

Contrôlez l’ordre de démarrage des conteneurs dans Docker Compose. Sélectionnez des composants dans le dropdown pour les ajouter comme dépendances.

Note : depends_on attend seulement que le conteneur démarre, pas que le service soit prêt. Utilisez des health checks pour des garanties de disponibilité.

Environment Tab

Variables d’environnement manuelles

Ajoutez des paires clé-valeur qui sont passées au conteneur lors de l’exécution et incluses dans les configurations Docker Compose générées.

Variables auto-générées (depuis les connexions)

Lorsque des composants sont connectés, des variables d’environnement sont automatiquement générées selon le schéma de connexion. Par exemple, connecter une API Express à PostgreSQL génère :

Variable Valeur
DB_HOST postgresql
DB_PORT 5432
DB_NAME express_db
DB_USER express_user
DB_PASSWORD express_password

Les valeurs auto-générées sont des valeurs par défaut — modifiez-les pour correspondre à votre configuration réelle.

Optional Environment Variables

Certains modèles incluent des variables optionnelles (ex. message broker, DevOps, ou secrets) qui peuvent être activées via le bouton +.

Custom Connection Rules (Composants personnalisés uniquement)

Définissez des règles de génération automatique de variables d’environnement lorsque ce composant se connecte à d’autres. Cela permet aux composants personnalisés de se comporter comme les composants intégrés.

Environment File

Créez un fichier .env chargé par le conteneur à l’exécution. Utile lorsque l’application attend un fichier .env (courant dans les projets Node.js, Python) ou pour l’édition en masse.

Format : KEY=value (un par ligne), supporte les commentaires #. Le fichier est chargé via Docker Compose env_file en complément des variables définies individuellement.

Scénario

Faire démarrer un service avec la bonne image et la bonne configuration.

  1. Ouvrez le nœud et commencez par l’onglet General. Réglez les ports en premier : ils déterminent ce que le reste peut atteindre.
  2. Passez à l’onglet Image. Une image qui n’existe pas encore est la raison la plus fréquente pour laquelle une application publiée ne démarrera pas plus tard ; si vous la construisez vous-même, voir Image Builder.
  3. Renseignez les variables d’environnement. Consultez Connected Components avant d’en ajouter à la main : les variables générées par une connexion n’ont pas à être répétées, et un doublon écrit à la main est ce qui divergera plus tard.
  4. N’ajoutez de volumes que là où l’état doit survivre à un redémarrage. Un volume ajouté par précaution est un élément à migrer plus tard.
  5. Fermez la fenêtre, puis enregistrez l’application. La fermeture seule ne persiste rien : la modification appartient à l’application, pas au composant.

En cas de problème

Symptôme Cause Comment vérifier Solution
Les modifications ont été perdues Fermer la fenêtre n’enregistre pas l’application La pastille de statut Enregistrez l’application après configuration
Un port est refusé Il faut la forme 3000 ou 8080:3000 Le champ des ports Utilisez l’une de ces deux formes
Des variables que vous n’avez pas ajoutées apparaissent Elles sont générées par une connexion Connected Components Comportement attendu ; ne les dupliquez pas
L’option sidecar est absente Le composant est lui-même un sidecar Le type du composant Les sidecars ne s’imbriquent pas

Pour aller plus loin