-- Leo's gemini proxy

-- Connecting to thasmanie.fr:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;lang=fr

Containers : quelle image de base ?

publié le 2023/01/16

retour


Intro


Depuis la migration de mes postes sur Arch, j'ai voulu challenger mes images de base pour docker et podman qui étaient du debian / ubuntu.


Quel choix ?


Il existe plusieurs possibilités, pour les images "apt-like", on va avoir ubuntu ou debian, avec une version -slim sur ces dernières (je ne sais pas pourquoi ce n'est pas par défaut).

On va ensuite avoir alpine, qui est un peu la référence, on va le voir après.

J'ai ensuite trouvé minideb ou ubi8, qui sont des dérivés de debian et redhat, optimisées pour les containers.


minideb, base debian, par bitnam (=VMWare)

Ubi, base Red Hat


Tests


Il est inutile de comparer les tailles des images de base car on en ferait rien (à part avec un binaire rust ou go à la rigueur). J'ai donc réécrit certaines de mes images, et voici quelques résultats :


# Samba
alpine          27abab034852   8 minutes ago   106MB
minideb         f7c8582371e5   6 minutes ago   231MB
ubuntu          f29dd2ea5461   4 minutes ago   277MB
sid-slim        e55bbd7acc1b   4 minutes ago   298MB
sid             61553f7e9ce7   2 minutes ago   372MB

# Python3
alpine            484f60af53ed   11 minutes ago   55.8MB
ubuntu            c3e674e67e3e   8 minutes ago    108MB
minideb           f35bef6081fb   10 minutes ago   109MB
sid-slim          cde1aa6cb529   9 minutes ago    113MB
sid               ef7927473bb2   9 minutes ago    157MB
ubi8-minimal      07ff77db31d7   6 minutes ago    218MB

On remarque que debian:sid est vite gros (la version -slim reste correcte), et qu'ubuntu n'est pas mal placée du tout.

Mais sur la taille, Alpine est loin devant.


Il faut aussi noter que le temps de build est beaucoup plus rapide avec Alpine (pas de post-inst !), mais aussi sur minideb et ubi8.


Je n'ai pas pu migrer certains services, comme le couple xorg / kodi, mais je ne désespère pas !


Sécurité


Alpine est connu pour être moins secure que les autres distrib, mais je n'ai pas trouvé d'élément tangible là-dessus.


Il faut aussi noter qu'Alpine est maintenu par 3 personnes, les packages sont maintenus par la communauté, c'est à savoir.


Performances


Alpine s'appuie sur la lib Musl, qui est moins performante que la libC, mais il faut avoir un vrai besoin de perfs pour sentir la différence.


Dans mon utilisation je n'ai senti aucune différence.


Conclusion


Bon on l'aura compris en lisant, je suis en train de migrer toutes mes images de debian:sid vers Alpine. C'est un vrai gain de temps au quotidien quand on fait beaucoup de tests et build.

C'est aussi un gain dans un cluster kubernetes quand les nodes doivent puller une image de 30 au lieu de 200 Mo !

-- Response ended

-- Page fetched on Sun May 5 13:39:41 2024