Variables de configuration

Les variables permettent de personnaliser le comportement du conteneur. Elles ont deux rôles principaux :

  1. Variables d’environnement : injectées directement dans le conteneur au moment du lancement.

  2. Formulaire dynamique : elles définissent les champs du formulaire dans la configuration des container profiles côté organisations. Les administrateurs d’organisation peuvent alors configurer des options (champs texte, cases à cocher, listes déroulantes, etc.) définies en amont par l’administrateur d’instance.

Important

  • Seules les variables marquées comme éditables apparaissent dans le formulaire de configuration côté organisation.

  • Les autres variables sont invisibles pour les administrateurs d’organisation et transmises en interne au conteneur.


Accès : verified_user Zone d’administration > view_in_ar Conteneurs & Stations de travail > stacks Images > sélectionnez une image > onglet Modèle > cliquez sur Modifier en face de la variable.


../../_static/images/instance/images/instance_images_template_edit_button_fr.png

Bouton Modifier pour éditer une variable existante.

Options

  • Mode de valeur : Détermine comment la valeur de ce champ est renseignée, et ce que voit l’administrateur d’organisation à l’étape Options de la configuration d’un profil de conteneur :

    • Fixée dans le profil de conteneur : la valeur sera configurable directement dans le profil de conteneur (s’applique à tous les profils de conteneur héritant de cette image).

    • Demandée au lancement du conteneur : pas de configuration dans le profil de conteneur — une fenêtre demande la valeur à l’utilisateur au moment de la connexion (s’applique à tous les profils de conteneur héritant de cette image).

    • Configurable par profil de conteneur : l’état, fixé ou demandé, sera à définir directement au sein de chaque profil de conteneur (voir capture ci-dessous).

    ../../_static/images/orga/containers/orga_container_profiles_value_mode_fr.png

    Dans un profil de conteneur héritant de cette image, le champ Keyboard configuré en « Configurable par profil de conteneur » affiche un menu déroulant.

  • Type : Le type du template. Différents types ont différentes utilités : certains sont configurables via les profils de conteneur, d’autres sont statiques.

    • STRING : Du texte

    • BOOLEAN : true/false (checkbox)

    • SELECT : Menu déroulant

    • SELECT_OPTION : Option du menu déroulant

    • SECRET : secret Docker Swarm

    • HOST : ajoute un enregistrement dans le fichier /etc/hosts du conteneur

  • Nom : Le nom de la variable affiché dans un profil de conteneur.

  • Variable : Le nom de la variable d’environnement qui sera envoyé au conteneur (option -e dans la ligne de commande Docker).

  • Éditable : Rendre éditable cette variable par les administrateurs d’organisation.

  • Priorité dans l’interface : Organise les champs d’un profil de conteneur : plus la valeur est haute, plus le champ apparaît en haut. Organise également les options SELECT_OPTION par ordre décroissant dans la liste déroulante.

  • Indication : Texte explicatif affiché sous le champ du template dans un profil de conteneur.

  • Placeholder : Texte grisé affiché dans un champ texte pour illustrer un exemple sans remplir le champ.

  • Valeur par défaut : La valeur attribuée lors de la création d’un profil de conteneur.

  • Variable de condition / Opérateur de condition / Valeur de condition : Applique une condition à l’affichage d’un template selon la valeur d’un autre template. Par exemple, pour afficher le champ TEMPLATE_1 uniquement si TEMPLATE_2 == true, configurez TEMPLATE_1 avec :

    Variable de condition : TEMPLATE_2
    Opérateur de condition : EQUAL
    Valeur de condition : true

Exemples

Champ visible et éditable, affiché en haut du profil, qui remplit la variable d’environnement REEMO_HOME avec sa valeur par défaut :

  • Nom: Home Page

  • Type: STRING

  • Variable: REEMO_HOME

  • Éditable: true

  • Priorité dans l’interface: 1000

  • Valeur par défaut: https://reemo.io


Champ non éditable (invisible dans le profil), actif uniquement si REEMO_PROXY == NONE, qui remplit alors REEMO_NO_PROXY=true :

  • Nom: REEMO_NO_PROXY

  • Type: STRING

  • Variable: REEMO_NO_PROXY

  • Éditable: false

  • Valeur par défaut: true

  • Condition: REEMO_PROXY EQUAL NONE


Même champ, avec une condition différente : actif uniquement si REEMO_PROXY == EXTERNAL, qui remplit alors aussi REEMO_NO_PROXY=true :

  • Nom: REEMO_NO_PROXY (autre condition)

  • Type: STRING

  • Variable: REEMO_NO_PROXY

  • Éditable: false

  • Valeur par défaut: true

  • Condition: REEMO_PROXY EQUAL EXTERNAL


Option d’une liste déroulante (SELECT_OPTION) pour le champ REEMO_PROXY, qui remplit REEMO_PROXY=EMBEDDED si sélectionnée — elle apparaît en deuxième position dans la liste (priorité entre 8 et 10 des autres options) :

  • Nom: Embedded Proxy

  • Type: SELECT_OPTION

  • Variable: REEMO_PROXY

  • Value: EMBEDDED

  • Priorité dans l’interface: 9

Créer un champ à choix multiples

Cet exemple montre comment permettre à chaque profil de conteneur de décider de la disposition du clavier. Il combine plusieurs variables partageant la même Variable : une par langue proposée (Type SELECT_OPTION), et une variable globale (Type SELECT) qui les regroupe et porte le Mode de valeur souhaité (voir la capture plus haut) :

  • Nom: French

  • Type: SELECT_OPTION

  • Variable: REEMO_KEYMAP

  • Value: fr

Répétez pour chaque langue à proposer (English, Swedish…), puis ajoutez la variable globale qui les regroupe :

  • Nom: Keyboard

  • Type: SELECT

  • Variable: REEMO_KEYMAP

  • Éditable: true

  • Mode de valeur: Configurable par profil de conteneur

../../_static/images/instance/images/instance_images_template_multichoice_fr.png

Les trois variables French/Sweden/English (Type SELECT_OPTION) et la variable Keyboard (Type SELECT) qui les regroupe, toutes reliées par la même Variable REEMO_KEYMAP.