• [^] # Re: From scratch ?

    Posté par (site web personnel) . En réponse à la dépêche Déployer une application Web C++ sur Heroku avec Docker et Nix. Évalué à 6.

    Je ne pense pas qu'il y ait de problème à faire tourner des images from scratch sur heroku, du moment qu'on respecte leurs contraintes.
    Je ne l'ai pas fait, mais j'ai fait tourner du distroless qui est assez proche.

    C'est proche de scratch dans le sens où ce n'est pas une distribution, il n'y a pas de gestionnaire de paquet, pas de runtime, pas de shell.

    C'est mieux que scratch dans le sens où ça inclus un certain nombre de composants de base et quasi obligatoires :

    • glibc
    • libssl
    • openssl
    • ca-certificates
    • A /etc/passwd entry for a root user
    • A /tmp directory

    (source)

    Et je trouve que c'est mieux que Alpine dans le sens où ce n'est pas basé sur musl mais bien sur glibc (on se retrouve souvent avec des alpine + couche de compatibilité glibc, j'avoue ne pas bien comprendre le but).

    C'est aussi mieux dans le sens où l'image n'a pas de shell, on est plus dans l'idée d'isolation de processus que de virtualisation légère. Il y a tout de même une version :debug avec un shell busybox (à utiliser avec --entrypoint=sh par exemple).

    Par contre, c'est plus gros qu'une alpine de base, 16Mo contre 4Mo. Faudrait comparer avec une alpine et les mêmes composants.

    Bref, je recommande du distroless, surtout pour du Go mais je pense que pour rust c'est pareil.