• [^] # Re: Container ou rien

    Posté par . En réponse au journal La galère de Python en déploiement. Évalué à 2.

    Les containers c'est nickel pour packager pour de la prod. Mais pour itérer en dev ....

    Ce que tu décris c'est faire ce qui est en prod pour du développement ce n'est pas ce qu'il faut faire.

    Tu utilise un dockerfile qui va bind ton dossier courant dans le container au lieu de faire une copie, c'est plus rapide et ça permet d'itérer sans problème.

    Pour faire du vite fais tu peut même te passer de dockerfile. De tête c'est de l'ordre

    name='MyProject'
    # créé un container 'MyProject' en y installant les dépendances
    docker run -it --name $name --mount type=bind,src=$PWD,dst=/data python:3.13 pip install -r /data/requirements.txt
    # utilise le container pour l'executer ton script
    docker start -it --mount type=bind,src=$PWD,dst=/data python:3.13 $name python mon_script.py mon_input > mon_output

    Tu peut soit détruire et reconstruire le conteneur quand tu change une dépendance soit faire un start pour mettre à jour les dépendances.

    Il est aussi possible d'utiliser docker compose qui va faire que tu ne joue plus qu'avec des docker compose up ou down (docker compose c'est un plugin de docker et pas un orchestrateur).

    Évidement tu peut utiliser des alias ou des choses comme just, tasks ou l'outil de build qui te plaît. Docker apporte d'autres éléments comme le fait de cloisonner ce que tu lance sur ta machine pour embêter ceux qui s'adonneraient à des supply chain attack. Et bien sûr si tu a besoin d'une base de données à côté c'est tout de même pratique.

    "En vrai les conteneurs sont une solution universelle" pour bien se faire ch*** pour rien.

    J'ai du mal à comprendre ta démarche. Plutôt que de t'interroger sur la pratique, tu pars sur ton à priori. Tu te doute bien que si certains le font c'est que c'est pratique pour eux.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll