====== Correction de problèmes ====== Dans ce TP vous devez corriger des configurations qui empêchent certains logiciels de fonctionner correctement. Pour cela, vous allez devoir créer une machine virtuelle sur la plateforme //openstack// dans le projet ASBD (domaine ''UNIV-LYON1''): - utilisez la //flavor// "xsmall" - utilisez le snapshot snap-tp-asbd Ces problèmes sont présents dans un docker spécialement préparés. Vous devez tout d'abord tester le bon fonctionnement du //daemon// docker. ==== Problème réseau ==== La première image à télécharger est ''192.168.246.149:5000/apache''. Cependant, un ''docker pull'' sur cette image ne fonctionne pas et reste bloqué sans rien télécharger. Essayez de comprendre la raison du problème et de le corriger. Pour cela essayez d'utiliser un écouteur réseau (''wireshark'', ''tshark'') ou d'espionner le //daemon// docker avec sysdig. Vous pouvez par exemple : * Capturer ce qui concerne ce processus : ''sysdig proc.name=dockerd -w docker.trace'' * Explorer le résultat : ''csysdig -r docker.trace'' * Voir les échanges //http// : ''sysdig -r docker.trace -c httplog'' * Voir les échanges réseaux : ''sysdig -r docker.trace -c echo_fds fd.type=ipv4'' ==== Problème de lancement ==== Lancez le docker en transférant les ports 80 et 443 et en partageant le répertoire ''/var/www/html/'' du docker avec le répertoire ''/docker/apache/html'' de la VM. De plus, ajoutez au fichier ''/etc/host'' du docker le nom de votre VM pour faciliter les configuration futures. Pour cela utilisez cette commande docker run -d -p 80:80 -p 443:443 -v /docker/apache/html:/var/www/html/ --add-host vm.asbd.univ-lyon1.fr:ip_de_votre_vm --name apache 192.168.246.149:5000/apache **Attention de bien mettre l'adresse IP de votre VM dans la ligne de commande** * Ce docker ne se lance pas, trouvez le(s) problème(s). Pour faire ce travail vous pouvez consulter les logs du docker et exécuter un shell dans le docker. ==== Mysql ==== Installez les paquets ''mysql-server'', ''mysql-client'' sur votre VM. **Attention de bien mettre toto** comme mot de passe de l'administrateur ''mysql'' * Testez le bon fonctionnement du serveur depuis votre VM. * Installer phpmyadmin depuis l'archive préconfigurée {{ :asbd:phpmyadmin.tar.gz |}} (voir le fichier phpMyAdmin/config.inc.php). * Cela ne devrait pas fonctionner, corriger le(s) problème(s). Pour cela tester le fonctionnement du service //mysql// en prenant bien soin d'être dans la même situation que le docker qui l'utilise. ==== Une application ==== Récupérer l'archive de l'application {{ :asbd:tiny-master.tar.gz |ici}}, elle est préconfigurée pour se connecter à votre base de données (voir fichier ''tiny-master/application/config/config.php''). Pour l'installation de cette application, il faut créer une base de donnée et la remplir en exécutant les script présents dans le répertoire ''tiny-master/_installation/''. Pour cela utilisez les commandes : mysql -u root -p < _installation/01-create-database.sql mysql -u root -p < _installation/02-create-table-song.sql mysql -u root -p < _installation/03-insert-demo-data-into-table-song.sql * L'application ne fonctionne pas, corriger le(s) problème(s).