C'est marrant de parler de Docker comme un cache-misère, moi si un sysadmin décide de faire de l'ingérence dans les dépendances de mon application, je lui dirais que je n'ai besoin que de Docker. Je résous le problème en faisant de l'ingérence dans les outils qu'il devra utiliser quoi ;-)
Ce n'est pas qu'un cache misère. Bien sûr que Docker c'est très bien, le problème c'est que pour beaucoup c'est un moyen de packager une application + ses milliards de dépendance qui vont avec sans se faire chier à documenter. Résultat on exécute le tout mais on ne sait pas comment ça marche, et le jour où ça crashe (à 3h du matin le dimanche bien sûr) on appelle le sysadmin en catastrophe pour tout remonter. Mais vu que l'install n'est pas documentée (c'était plus simple de fournir un unique container Docker) c'est la galère.
Sans attaque personnelle, je suis curieux de savoir dans quel domain tu es sysadmin. De mon point de vu vouloir gérer les dépendances à partir des paquets de la distrib est peine perdue sortie de C/C++ et (j'imagine, merci de me corriger si ce n'est pas le cas) Java.
Non ce n'est pas peine perdue, à ma connaissance Debian package de tas d'applications capables d'utiliser les dépendances des mêmes dépôts ? Cette mode de vouloir outrepasser les versions de la distribution et avoir du frais est à mon sens récente et est arrivée avec node.
deux projets ont des dépendances en version différentes, comment faire via apt-get pour que chaque projet utilise la bonne version de la lib ? Pour résoudre ce problème npm et composer installent dans le répertoire du projet, pip a les virtualenv etc.
Pour un projet en python/ruby/php/js une majorité des dépendances ne sont pas packagées dans la distrib, il faut tout re-écrire dans le projet ? (bonjour l'explosion de la complexité et de maintenance...) ou bien tout copier en dur dans le projet ?
Ma réponse va sembler simpliste mais : tu code ton appli pour qu'elle tourne sur Debian 8 et c'est tout. N'utilise pas de dépendances externes ou en version trop récente. Cet enfer de dépendances est peut-être justement due au fait que tout le monde veut aller trop vite et considère que le problème vient des distributions ? Moi je vois ça dans l'autre sens, on code sur des ecosystèmes inexistants ou exotiques et on fait du forcing/bidouillage pour caser ça en production.
[^] # Re: Trollons
Posté par MTux . En réponse au journal Comment 11 lignes de code ont provoqué un #npmgate. Évalué à 10.
Ce n'est pas qu'un cache misère. Bien sûr que Docker c'est très bien, le problème c'est que pour beaucoup c'est un moyen de packager une application + ses milliards de dépendance qui vont avec sans se faire chier à documenter. Résultat on exécute le tout mais on ne sait pas comment ça marche, et le jour où ça crashe (à 3h du matin le dimanche bien sûr) on appelle le sysadmin en catastrophe pour tout remonter. Mais vu que l'install n'est pas documentée (c'était plus simple de fournir un unique container Docker) c'est la galère.
Non ce n'est pas peine perdue, à ma connaissance Debian package de tas d'applications capables d'utiliser les dépendances des mêmes dépôts ? Cette mode de vouloir outrepasser les versions de la distribution et avoir du frais est à mon sens récente et est arrivée avec node.
Ma réponse va sembler simpliste mais : tu code ton appli pour qu'elle tourne sur Debian 8 et c'est tout. N'utilise pas de dépendances externes ou en version trop récente. Cet enfer de dépendances est peut-être justement due au fait que tout le monde veut aller trop vite et considère que le problème vient des distributions ? Moi je vois ça dans l'autre sens, on code sur des ecosystèmes inexistants ou exotiques et on fait du forcing/bidouillage pour caser ça en production.