PrimTux, la distribution éducative

Version complète : Utilisation de docker : automatisation de tests
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Docker est un bon outil pour faire de la livraison continue.

J'ai créé un dépôt rapide https://framagit.org/mothsart/docker_primtux avec les premières briques.

L'objectif est de vérifier rapidement que des modifs sur des paquets "critiques" n'impactent pas la distribution sur une version en particulier.

Pour l'instant, j'ai fait au plus simple (juste didactique) pour faire comprendre le principe :

Il y a la possibilité de lancer une version d'ubuntu ou debian et lancer un script.

Selon le cas, ça affiche si on est en présente de l'un ou l'autre.
Je n'ai jamais utilisé Docker, donc il faudra être plus explicite sur l'utilisation des fichiers du dépôt en ce qui me concerne !

PS: n'hésite pas à me faire un "Docker pour les nuls !" Wink
Une première entrée en matière : https://www.youtube.com/watch?v=caXHwYC3tq8

La vidéo est très bien pour comprendre les concepts derrières même je suis pas dac sur sa conclusion : ça ne s'utilise pas en production pour moi.
Il ne dit pas non plus (ou maladroitement) qu'il y a un système de snapshot et d'historique.

Une fois que tu auras vu la vidéo, tu remarqueras que j'ai mis dans mon dépôt 2 répertoires : 1 pour Ubuntu et 1 pour debian.
Chacun a son fichier DockerFile avec des instruction de construction d'une image.

Celle-ci est construite une fois avec la commande "docker build" (voir le readme de mon dépôt).
Comme son nom l'indique : ça va exécuter l'ensemble des instructions du fichier Dockerfile.
Une fois terminé avec succès, on a accès un conteneur via la second commande "docker run".

A ce moment, on se retrouve quasiment instantanément (c'est là qu'on voit l'avantage entre lancer une vm et un conteneur) dans un shell isolé ou l'on peut lancer un script qui va (par exemple) tester le bon fonctionnement d'une série d'installation/désinstallation de logiciels.

Si l'on fait un correctif de ce fameux script, il est possible de rejouer le tout sans être potentiellement pollué par un script qui aurait fait les choses à moitié.

Voilà, ça devrait déjà te mettre un peu en jambe. J'étofferais au fur et à mesure.
Alors, étape n°2 : Je viens de créer un serveur de test en python qui va permettre de piloter les tests automatisés :
https://framagit.org/mothsart/server_test_primtux/

Ca ressemble à ça : https://framagit.org/mothsart/server_tes...enshot.png

L'étape 3 va être de lancer ce serveur dans notre environnement docker et rediriger la sortie sur le serveur hôte.

J'ai mis 3 scripts de tests https://framagit.org/mothsart/server_tes...er/scripts afin de bien différencier :

- une erreur critique : le script s'arrête
- un résultat différent de celui attendu
Il n'y a pas de Docker pour les versions 32 bits de Debian ?

J'ai essayé d'installer docker en suivant les procédures de cette page:
https://docs.docker.com/install/linux/docker-ce/debian/

Par le dépôt, qui s'installe convenablement, il me répond que le paquet docker-ce n'existe pas.

Par le .deb, je ne trouve pas de version 32bits dans le dépôt dont l'adresse est donnée en lien sur la page.
C'est quoi l'intérêt de docker-ce par rapport à docker ? Parce que docker fonctionne bien sur Debian i386.
Ben, j'en sais rien ! En cherchant à installer docker pour Debian, c'est ça que j'ai trouvé !
Ah, autant pour moi : le paquet a changé plusieurs fois de nom sur debian : c'est un peu la foire. docker puis docker.io puis docker-ce.
A voir si docker.io n'existe pas.