Forum Linux.général Une machine virtuelle légère avec python3.7

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
2
12
nov.
2019

Bonjour,

Ce weekend j'ai commencé à regarder pour faire une machine virtuelle (dans le but de la distribuer). Le seul besoin de cette machine virtuelle est de permettre d'utiliser un programme écrit en python (>= 3.7) et nécessite un serveur graphique pour afficher un terminal.

Tout ce qui n'es pas nécessaire pour :

  • Afficher un terminal dans une interface graphique (comme terminator)
  • Exécuter du code python3.7

Peut être absent de la machine virtuelle.

Au départ je me suis dit, bah, virtualbox pour installer une debian comme d'habitude. Mais en fait je me retrouve vite avec un système qui à besoin d'au moins 1Go de disque dur, voir plus. Ce qui fait quand même un gros fichier à distribuer …

J'ai regardé du côté des distributions "light" (ex. Puppy Linux). En fait certaines sont légère en RAM mais lourde sur le disque. D'autre légère sur disque (quoi que je ne trouve pas toujours l'info) mais je ne sais pas si je pourrais installer/compiler python 3.7 dessus.

Bref je ne sais pas trop quoi choisir ou comment faire.
Des idées ?

Pour résumer les besoins de cette machine virtuelle:

  • Afficher un terminal dans une interface graphique (comme terminator)
  • Exécuter du code python3.7
  • Prendre le minimum d'espace disque possible
  • # pyinstaller

    Posté par  . Évalué à 3.

    Peux-tu préciser à quoi va servir la machine virtuelle exactement ? Si c'est seulement pour distribuer un programme, pyinstaller permet de créer un exécutable qui embarque toute les dépendances et l'interpréteur python. Tu te retrouves avec un simple fichier exécutable de quelques Mo qui permet de faire tourner l'application sans aucune dépendances nécessaire.

    Il peut créer des Applis Linux, Windows, MacOS…

    • [^] # Re: pyinstaller

      Posté par  (site web personnel, Mastodon) . Évalué à 2.

      Bonjour Strash,

      A la base l'idée était bien de distribuer seulement le programme python (Windows + Linux). Mais ce programme doit s'afficher dans un terminal et nécessite fcntl. Donc même une fois passé à la moulinette de PyInstaller ou de Cx_Freeze, il ne peut être utilisé sous Windows.

      J'ai réussi à faire un script .bat qui permet d'installer cygwin et faire fonctionner le programme à travers, mais il reste des problèmes d'affichages assez problématiques (problème de couleur + utf-8 on dirait …) En attendant de pouvoir corriger ces problèmes sous Windows + Cygwin (ou en remplacement pourquoi pas …) j'aimerais faire cette machine virtuelle.

      S’il te prend l'idée de faire des tests, le programme concerné est https://github.com/buxx/rolling et la procédure qui installe ça sous Windows avec Cygwin est là: https://github.com/buxx/rolling/tree/master/windows (install.bat)

      🦀🐍 http://github.com/buxx 🖥 https://algoo.fr 📋 https://tracim.fr

  • # docker

    Posté par  . Évalué à 3. Dernière modification le 12 novembre 2019 à 11:47.

    ca permet de faire un environnement léger, figé à un instant T, avec tes libs, ton ou tes programmes.

    par contre le lancement d'un terminal graphique peut s'avérer compliqué suivant les OS (windows, osx)

    peut-être qu'un terminal en shell genre taux tmux serait suffisant ?

    • [^] # Re: docker

      Posté par  (site web personnel, Mastodon) . Évalué à 2. Dernière modification le 12 novembre 2019 à 11:41.

      Bonjour NeoX,

      Tu trouveras des infos dans mon commentaire au-dessus.

      peut-être qu'un terminal en shell genre taux serait suffisant ?

      Qu'est-ce que c'est ? Ca ne me dit rien.

      🦀🐍 http://github.com/buxx 🖥 https://algoo.fr 📋 https://tracim.fr

      • [^] # Re: docker

        Posté par  . Évalué à 3. Dernière modification le 12 novembre 2019 à 11:49.

        méchant correcteur orthographique qui corrige pour moi les mots techniques

        c'etait évidemment tmux qu'il fallait deviner :p

        • [^] # Re: docker

          Posté par  (site web personnel, Mastodon) . Évalué à 2.

          Ah oui d'accord :) Du coup cette solution ne semble pas résoudre le problème que je rencontre (pas de fcntl sous windows).

          🦀🐍 http://github.com/buxx 🖥 https://algoo.fr 📋 https://tracim.fr

          • [^] # Re: docker

            Posté par  . Évalué à 3.

            pas de fcntl sous windows

            docker ne tourne qu'en environnement linux,
            sous windows ou osx y a une VM linux cachée

            donc tu aura ton fnctl comme dans ta vm VirtualBox

            • [^] # Re: docker

              Posté par  (site web personnel, Mastodon) . Évalué à 2.

              Ah oui intéressant … Est-ce que tu sais si on peut embarquer docker comme un exécutable ? Ou est-ce que l'on est obligé de l'installer comme un service ? Le top du top serait que l'utilisateur du programme n'est qu'un script à lancer après avoir décompressé une archive.

              🦀🐍 http://github.com/buxx 🖥 https://algoo.fr 📋 https://tracim.fr

              • [^] # Re: docker

                Posté par  . Évalué à 3. Dernière modification le 12 novembre 2019 à 14:28.

                Bjr.

                Docker fonctionne en tant que service. Par contre le lancement d'une image docker (voire d'une commande spécifique dans une image docker) est l'affaire d'une commande (typiquement 'docker run …' ou 'docker exec …').

                ++
                Gi)

  • # Damn small linux?

    Posté par  . Évalué à 2.

    Tout est dans le titre. DSL semble plus adaptée à ce que tu veux faire. Sinon, p'tet Alpine, aussi.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.