Images des conteneurs utilisateurs¶
Principes généraux¶
Les variables de registre sont lues par le rôle Ansible reemo-provision.
REGISTRY_URL: l’url du registre (ex. registry.reemo.io)
REGISTRY_ENV: le préfixe permettant au rôle Ansible de construire les noms d’images au format REGISTRY_ENV chromium
REGISTRY_USERNAME: nom d’utilisateur fourni par le support Reemo
REGISTRY_PASSWORD: mot de passe fourni par le support Reemo
Exemple d’image résultante : registry.reemo.io/reemosbchromium:latest
Note
Optimisation : Le rôle Ansible permet de personnaliser finement le préchargement des images Docker (Relay, Provisioning, modes air-gapped). Pour configurer vos propres variables, reportez-vous directement à la section dédiée en bas de page : Préchargement d’images (Image Warmup).
Tip
Vérifiez l’espace disque sur chaque noeud. Le chargement d’images peut exiger plusieurs Go libres.
Mode Online¶
Toutes les machines joignent directement le registre Reemo.
Conditions¶
Sortie HTTPS ouverte vers registry.reemo.io:443.
Identifiants fournis par le support Reemo.
Inventaire minimal¶
all:
vars:
REGISTRY_URL: "registry.reemo.io"
REGISTRY_ENV: "reemosb"
REGISTRY_USERNAME: "user"
REGISTRY_PASSWORD: "password"
PROVISION_IMAGE_WARMUP: ["registry.reemo.io/reemosbchromium","registry.reemo.io/reemosbssh"]
Contrôles rapides¶
Vérifier la connexion au registre (depuis un noeud)
docker login registry.reemo.io
Vérifier le préfixe utilisé (exemple)
docker pull registry.reemo.io/reemosbchromium:latest
Confirmer la présence de l’image en local
docker image ls
Mode Proxy¶
Les noeuds accèdent au registre via un proxy HTTP/HTTPS.
Utilisez la même configuration d’inventaire que le mode Online.
Pour déclarer le proxy au niveau du service Docker:
Rajoutez la ligne suivante dans la section [Service] du fichier
/usr/lib/systemd/system/docker.service
EnvironmentFile=/etc/default/docker
Créez le fichier
/etc/default/dockeret renseignez les infos suivantes:
http_proxy="http://< IP du serveur Proxy >:< Port du service Proxy >"
https_proxy="http://< IP du serveur Proxy >:< Port du service Proxy >"
Au niveau du proxy autorisez les 2 urls suivantes:
registry.reemo.io
registry-auth.reemo.io
Mode Offline¶
Une machine pont avec Internet récupère les images, puis vous les préchargez ailleurs (noeuds ou registre privé).
Scénario A : Tarballs distribués¶
Sur la machine pont :
docker login registry.reemo.io
docker pull registry.reemo.io/reemosbchrome:latest
docker save registry.reemo.io/reemosbchrome:latest > /tmp/reemosbchrome_latest.tar
Transférez les .tar vers les noeuds puis chargez les sur le noeud :
docker load < reemosbchrome_latest.tar
Scénario B : Registre privé intermédiaire¶
La machine pont pull depuis registry.reemo.io puis push vers votre registre privé.
Sur les noeuds, configurez :
REGISTRY_URL: "<votre_registre_prive>"
REGISTRY_ENV: "<votre_namespace>"
REGISTRY_USERNAME: "<user_si_requis>"
REGISTRY_PASSWORD: "<password_si_requis>"
Vous pouvez ensuite lancer l’installation en mode Online contre votre registre.
Préchargement d’images (Image Warmup)¶
Le rôle Ansible peut précharger (pull) les images Docker en amont du déploiement pour accélérer le démarrage des conteneurs et préserver la bande passante lors des phases critiques.
PROVISION_IMAGE_WARMUP¶
Liste des images à précharger pour les sessions isolées de provisioning.
Valeur par défaut :
PROVISION_IMAGE_WARMUP:
- "registry.reemo.io/reemosbchromium"
Logique de ciblage dynamique :
Contrairement à un groupe fixe, le rôle examine les groupes de l’hôte pour détecter son préfixe de provisioning (provision, provision1, provision2, etc.) et applique la règle suivante :
Si le groupe
<prefix>_workerexiste et contient des hôtes : seuls ces nœuds workers effectuent le préchargement.Sinon (pas de worker défini) : ce sont les nœuds du groupe
<prefix>_managerqui prennent le préchargement en charge.
Cela garantit que le warmup s’exécute uniquement sur les machines qui vont réellement lancer les conteneurs (que vous soyez sur une petite topologie Manager-only ou une architecture distribuée).
Exemples d’overrides¶
Surchargez ces variables dans vos group_vars ou host_vars pour gérer des versions de rollback ou un miroir privé avec des versions d’images fixes :
# group_vars/provision_worker.yml
PROVISION_IMAGE_WARMUP:
- "registry.entreprise.local/reemosbchromium:2.8.0" # Miroir interne + version fixe
- "registry.reemo.io/reemosbfirefox:2.8.0" # Sandbox alternative
LOAD_IMAGE¶
Pour désactiver complètement le préchargement des images (notamment en environnement air-gapped sans accès Internet) :
LOAD_IMAGE: true
Par défaut, la variable est à false.