Mehdi Laderiere
Développeur Web Junior, l’un de nos Super-héros du digital de la Team BGS, nous parle de Docker et comment configurer une application.
Développeur Web Junior, l’un de nos Super-héros du digital de la Team BGS, nous parle de Docker et comment configurer une application.
Docker est un logiciel libre offrant la possibilité d’empaqueter à l’intérieur de containers des applications et leurs dépendances, ainsi que de lancer ces applications, tout cela depuis n’importe quel serveur.
Docker peut par exemple s’avérer être très pratique lorsque plusieurs développeurs souhaitent partager le même environnement de développement et ainsi garder une certaine uniformité.
Dans cet article nous allons voir comment utiliser Docker de telle sorte à exécuter une application multi-containers regroupant : Apache, php et MySQL.
ETAPE 1: Docker-compose.
Docker-compose.yml : Il permet de définir des containers dans le but de configurer les différents services de notre application.
Ici nous avons défini deux containers :
Dans le docker-compose on peut donc monter des containers directement via des images officielles tirées de docker hub pour cela il suffit juste de renseigner le nom de l’image, ou alors on peut utiliser un Dockerfile qui nous permet de spécifier des lignes de commandes en plus de l’image à utiliser. C’est précisément ce que nous allons effectuer afin d’installer la dépendance mysqli de php pour interfacer le php avec mysql.
Pour plus d’infos sur le fichier docker-compose.yml voici la documentation.
ETAPE 2: Dockerfile.
Créer un répertoire php à la racine du projet.
Dans le dossier php créer le fichier ( attention à ne pas mettre d’extension au fichier )
Placer ce contenu et sauvegarder.
Pour plus d’infos sur le fichier Dockerfile voici la documentation.
Si tout s’est bien passé, « done » apparaît après la création de chaque container comme sur l’image ci-contre.
A l’aide de la commande docker ps vous pouvez vérifier le statut de vos containers.
A noter que si vous souhaitez arrêter l’exécution de vos containers vous pouvez utiliser la commande docker-compose down.
Bien vérifions maintenant que les services sont fonctionnels ! Pour cela il nous suffit de nous connecter à nos containers fraîchement construits et opérationnels, voici la commande à exécuter: docker exec -it nomducontainer bash
Tester PHP :
Ici le terminal nous renvoie bien à la version de PHP que nous avons installé, notre PHP est maintenant opérationnel.
La commande exit nous permet de quitter le container.
Tester la connexion à Mysql :
Dans le répertoire php de notre application nous allons créer un fichier que nous nommerons index.php où nous allons placer le contenu suivant :
Afin d’executer notre code php, récupérons l’ip de notre host à l’aide de la commande docker-machine ls
Ouvrez un navigateur internet saisissez l’adresse « http://votreipdocker:8000 pour voir le résultat.