docker app bundle |
Paquet d'application |
Docker |
Syntaxe
docker app bundle [APP_NAME] [--output OUTPUT_FILE]
|
Paramètres
Nom |
Description |
APP_NAME |
Ce paramètre permet d'indiquer le nom de l'application. |
-o OUTPUT_FILE |
Ce paramètre permet d'indiquer la sortie de fichier. Utiliser le paramètre «-» pour la sortie standard (stdout). La valeur par défaut est bundle.json. |
--output OUTPUT_FILE |
Ce paramètre permet d'indiquer la sortie de fichier. Utiliser le paramètre «-» pour la sortie standard (stdout). La valeur par défaut est bundle.json. |
Description
Cette commande permet de créer une image d'appel CNAB et bundle.json pour l'application.
Remarques
- Cette commande est considéré comme une commande expérimentale. Cette état évoque deux problèmes potentiel, les paramètres de la commande peuvent changer sans préavis et
le comportement attendu n'est pas garantie dans tous les situations.
- Cette commande ne doit pas être utilisé dans les environnements de production : Pour activer les fonctionnalités expérimentales dans l'interface de ligne de
commande Docker, modifiez le fichier config.json et définissez expérimental sur enabled.
- Encapsulation d'une application complète : docker app bundle permettait de regrouper tous les éléments nécessaires au déploiement d'une application
multi-conteneurs (services, volumes, configurations) dans un seul fichier CNAB, facilitant ainsi le transport et l'installation de l'application sur différentes plateformes.
- Format CNAB pour la portabilité : La commande générait un fichier .cnab contenant l'application, sa description, et les métadonnées nécessaires pour
l'exécuter sur plusieurs environnements, tels que Docker Swarm ou Kubernetes, ce
qui visait à garantir une portabilité accrue.
- Intégration avec Docker Hub et OCI registries : Une fois le bundle créé, il pouvait être entreposé et partagé via Docker Hub ou d'autres registres OCI
compatibles, permettant ainsi aux équipes de distribuer facilement des applications paquetées et réutilisables.
- Alternative aux fichiers Compose classiques : Contrairement aux fichiers docker-compose.yml utilisés traditionnellement pour orchestrer des services,
docker app bundle offrait un format plus structuré, intégrant les métadonnées et la gestion des versions directement dans le paquet.
- Personnalisation des paramètres : Lors du bundling, il était possible de définir des valeurs de configuration dynamiques (ex: variables d'environnement, paramètres
d'instances) via des fichiers de configuration JSON ou YAML, ce qui facilitait
l'adaptation du déploiement aux différents environnements (test, prod,...).
- Compatibilité avec les runtime CNAB : Les applications créées avec docker app bundle pouvaient être exécutées non seulement avec Docker mais aussi
avec d'autres moteurs compatibles CNAB, comme Porter ou Duffle, rendant les bundles plus polyvalents pour les écosystèmes infonuagique-native.
- Abandon et alternatives : docker app bundle a été supprimé avec la fin de Docker App, principalement parce que la communauté préférait des outils plus
largement adoptés comme Docker Compose, Helm pour
Kubernetes, ou encore des solutions spécifiques à chaque fournisseur infonuagique.
- Complexité vs adoption : Bien que techniquement puissant, docker app bundle souffrait d'un manque d'adoption, notamment à cause de la courbe d'apprentissage
liée au format CNAB et du fait que la plupart des équipes étaient déjà à l'aise avec docker-compose ou des manifestes Kubernetes YAML.
Dernière mise à jour : Vendredi, le 11 Décembre 2020