En savoir plus
Docker
Les origines du projet et la mécanique du noyau Linux : pour comprendre ce qui se cache derrière docker run.
420-5A4-MT · Serveurs évolutifs · Docker

D'où vient Docker ?
Docker est né en 2013 de la vision de Solomon Hykes au sein du PaaS dotCloud. L'outil ne cherchait pas à inventer la virtualisation, mais à simplifier et démocratiser les mécanismes d'isolation natifs du noyau Linux.
cgroups imposent les
plafonds (RAM, CPU) tandis que les namespaces isolent
processus et réseau.docker run, Dockerfile).
Sous le capot : la prison applicative
Le noyau Linux sait isoler un processus depuis longtemps. Docker ne fait qu'assembler élégamment des mécanismes natifs :
Installation de LAMP
Pour cette méthode, choisissons une image contenant le stack LAMP complet.
Celle-ci est basée sur Baseimage-docker (une image minimal d'Ubuntu modifiée pour une meilleure intégration Docker) et Docker-LAMP (une image contenant une pile LAMP), tout ça dans la même image.
Lançons donc un container avec cette image :
docker run -i -t -p "80:80" -v ${PWD}/www:/app -v ${PWD}/mysql:/var/lib/mysql mattrayner/lamp:0.8.0-1804-php8L'option -v (volume) relie les répertoires locaux ~/conteneur/www et ~/conteneur/mysql aux répertoires /app (simlink vers /var/www/html) et /var/lib/mysql de l'image Ubuntu dans le container.
L'option -p (port) relie les ports qui nous intéressent du container aux ports de votre machine locale. Ici le port 80 (HTTP) et le port 3306 (MySQL).