dockerc - un outil pour compiler des images Docker en binaires portables autonomes
(github.com/NilsIrl)- Un outil qui compile des images Docker en binaires autonomes et portables
- Permet de fournir aux utilisateurs des binaires exécutables sans avoir besoin de commandes comme
docker run,pip installounpm i
Caractéristiques
- Compile des images Docker en binaires portables.
- Conteneurs ne nécessitant pas de privilèges root.
- Support de MacOS et Windows (via QEMU) : prévu
- Support de x86_64 (support arm64 prévu)
- Prise en charge des arguments
- Prise en charge de la définition de variables d’environnement avec
-e. - Prise en charge de la définition de volumes avec
-v.
Utilisation
- Installer dockerc depuis la dernière release.
- Générer un binaire de sortie à partir d’une image de Docker Hub ou d’une image du registre local du démon Docker.
- Le binaire généré peut être invoqué comme un binaire classique.
- Les options
-eet-vpeuvent être spécifiées de la même manière qu’avecdocker run. - Accès direct possible aux services réseau exécutés dans le conteneur, sans avoir à spécifier
-p. - Skopeo est utilisé pour le chargement des images ; pour les autres emplacements, voir la documentation correspondante.
L’avis de GN⁺
- dockerc est un outil qui peut améliorer considérablement l’utilisabilité de Docker en permettant aux utilisateurs d’exécuter des applications sans processus d’installation complexe. Cela peut être particulièrement utile pour les utilisateurs non techniques.
- La possibilité de compiler des images Docker en binaires simplifie la distribution et le déploiement, ce qui permet aux développeurs et aux administrateurs système de gagner du temps et d’améliorer leur efficacité.
- Toutefois, pour que cette technologie soit largement adoptée, les questions liées à la sécurité, aux performances et à la compatibilité doivent être suffisamment résolues. Par exemple, il faut vérifier si le binaire compilé est aussi sûr que l’image Docker d’origine et s’il fonctionne correctement sur tous les systèmes.
- Parmi les autres projets offrant des fonctionnalités similaires à Docker, on trouve Podman, qui permet d’exécuter des conteneurs sans privilèges root.
- Lors de l’adoption de dockerc, il faut prendre en compte son intégration avec les workflows Docker existants, les méthodes de mise à jour et de gestion des images, ainsi que la taille et les performances des binaires compilés. Les avantages de cette technologie sont la simplification du déploiement et la facilité d’utilisation, mais il faut aussi considérer avec attention la surcharge potentielle du processus de compilation et les éventuels problèmes de compatibilité.
2 commentaires
Oh, c’est assez intéressant.
Avis Hacker News
C’est vraiment génial.
Par le passé, j’ai utilisé et recommandé nix-bundle¹ ou son équivalent officiel,
nix bundle².nix bundlepeut produire non seulement de gros exécutables, mais aussi des images Docker, des AppImages et quelques autres formats d’images/exécutables.Revenir à des exécutables portables avec un OS intégré, c’est vraiment bien.
L’utilisateur attend que les gens commencent à envoyer les Dockerfiles qui génèrent les conteneurs Docker exécutant ce genre de choses.
Il y a là une grande ironie cosmique.
C’est une belle avancée, Nils ! Ravi de voir les progrès du projet depuis notre discussion à AGI House.
Il faut encore des éléments différents pour d’autres architectures.
Bonne idée ! Comment cela fonctionne-t-il concrètement ?
C’est sympa d’avoir utilisé le dessin de la BD de Rant.
Qu’est-ce que cela veut dire ? Cela permettrait aux utilisateurs de distribuer un exécutable Ruby portable sans que l’utilisateur ait à installer Ruby ?