Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
docker_lamp [Le 21/12/2021, 00:15]
wiki-corrector-bot passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
docker_lamp [Le 18/01/2022, 16:26]
93.15.43.175 [Méthode avancée]
Ligne 50: Ligne 50:
  
 Lançons donc un conteneur avec cette image : Lançons donc un conteneur avec cette image :
-<​code>​docker run -v ~/​www:/​var/​www/​html -v ~/​mysql:/​var/​lib/​mysql -p 80:80 -p 3306:3306 --restart=always lioshi/​lamp:​php5</​code>​+<​code>​docker run -v ~/.docker/​www:/​var/​www/​html -v ~/.docker/​mysql:/​var/​lib/​mysql -p 80:80 -p 3306:3306 --restart=always lioshi/​lamp:​php5</​code>​
 L'​option **-v** (volume) relie les répertoires locaux **~/www** et **~/mysql** aux répertoires **/​var/​www/​html** et **/​var/​lib/​mysql** de l'​image Debian dans le conteneur.\\ ​ L'​option **-v** (volume) relie les répertoires locaux **~/www** et **~/mysql** aux répertoires **/​var/​www/​html** et **/​var/​lib/​mysql** de l'​image Debian dans le conteneur.\\ ​
 L'​option **-p** (port) relie les ports qui nous intéressent du conteneur aux ports de notre machine locale. Ici le port 80 (HTTP) et le port 3306 (MySQL).\\ ​ L'​option **-p** (port) relie les ports qui nous intéressent du conteneur aux ports de notre machine locale. Ici le port 80 (HTTP) et le port 3306 (MySQL).\\ ​
Ligne 88: Ligne 88:
             - "​80:​80"​             - "​80:​80"​
         volumes:         volumes:
-            - ~/​www:/​var/​www/​html+            - ~/.docker/​www:/​var/​www/​html
         links:         links:
             - db:db             - db:db
Ligne 94: Ligne 94:
         image: mysql:5.5         image: mysql:5.5
         volumes:         volumes:
-            - ~/​mysql:/​var/​lib/​mysql+            - ~/.docker/​mysql:/​var/​lib/​mysql
         ports:         ports:
             - "​3306:​3306"​             - "​3306:​3306"​
Ligne 109: Ligne 109:
 **web**, **db** et **myadmin** sont les noms qu'on décide de leur donner. Ces noms sont utilisés pour créer des liens - **links** - entre les différents conteneurs. Par ex. **db:db** signifie que notre conteneur **db** (du nom de notre conteneur MySQL) correspondra à l'​hôte **db** dans notre conteneur **web**. Pour se connecter au serveur [[:MySQL]] il faudra donc entrer **db** comme nom d'​hôte.\\ ​ **web**, **db** et **myadmin** sont les noms qu'on décide de leur donner. Ces noms sont utilisés pour créer des liens - **links** - entre les différents conteneurs. Par ex. **db:db** signifie que notre conteneur **db** (du nom de notre conteneur MySQL) correspondra à l'​hôte **db** dans notre conteneur **web**. Pour se connecter au serveur [[:MySQL]] il faudra donc entrer **db** comme nom d'​hôte.\\ ​
 On peut également passer des variables d'​environnements à nos conteneurs. Ici nous définissons le mot de passe de l'​utilisateur [[:MySQL]] **root** comme étant **root**.\\ ​ On peut également passer des variables d'​environnements à nos conteneurs. Ici nous définissons le mot de passe de l'​utilisateur [[:MySQL]] **root** comme étant **root**.\\ ​
-De la même manière que l'​options **-v** de la ligne de commande, le paramètre **volumes** relie les répertoires locaux **~/www** et **~/mysql** aux répertoires **/​var/​www/​html** de l'​image Apache/PHP et **/​var/​lib/​mysql** de l'​image MySQL dans nos conteneurs.\\ ​+De la même manière que l'​options **-v** de la ligne de commande, le paramètre **volumes** relie les répertoires locaux **~/.docker/www** et **~/.docker/mysql** aux répertoires **/​var/​www/​html** de l'​image Apache/PHP et **/​var/​lib/​mysql** de l'​image MySQL dans nos conteneurs.\\ ​
 Et le paramètre **ports** de la même manière que l'​options **-p**, relie les ports qui nous intéressent de nos conteneurs aux ports de notre machine locale. Ici le port 80 (HTTP) et le port 3306 (MySQL), ce dernier peut-être et même doit-être supprimé si vous avez déjà un LAMP sur votre machine locale (hôte). Et le paramètre **ports** de la même manière que l'​options **-p**, relie les ports qui nous intéressent de nos conteneurs aux ports de notre machine locale. Ici le port 80 (HTTP) et le port 3306 (MySQL), ce dernier peut-être et même doit-être supprimé si vous avez déjà un LAMP sur votre machine locale (hôte).
  
Ligne 117: Ligne 117:
 Il faut attendre un peu que les images soient téléchargées,​ et c'est tout ! Notre serveur est en route. Il faut attendre un peu que les images soient téléchargées,​ et c'est tout ! Notre serveur est en route.
  
-De la même manière qu'​avec la [[#méthode simple]] les bases de données seront sauvegardées dans notre répertoire **~/​mysql**.\\ ​+De la même manière qu'​avec la [[#méthode simple]] les bases de données seront sauvegardées dans notre répertoire **~/.docker/​mysql**.\\ ​
 [[:​PhpMyAdmin]] est cette fois accessible sur le port 8080 : [[http://​localhost:​8080]]\\ ​ [[:​PhpMyAdmin]] est cette fois accessible sur le port 8080 : [[http://​localhost:​8080]]\\ ​
 Et cette fois l'​utilisateur par défaut pour les bases de données sera **root** avec le mot de passe **root** (hôte **db**). Et cette fois l'​utilisateur par défaut pour les bases de données sera **root** avec le mot de passe **root** (hôte **db**).
  
-On peut mettre les fichiers de notre site dans notre répertoire **~/www**. On pourra ensuite y accéder sur [[http://​localhost]].+On peut mettre les fichiers de notre site dans notre répertoire **~/.docker/www**. On pourra ensuite y accéder sur [[http://​localhost]].
  
 Pour passer de MySQL 5.5 à MySQL 5.7 par ex. il suffit de remplacer **image: mysql:5.5** par **image: mysql:5.7** et de relancer **docker-compose up**. Pour passer de MySQL 5.5 à MySQL 5.7 par ex. il suffit de remplacer **image: mysql:5.5** par **image: mysql:5.7** et de relancer **docker-compose up**.
  • docker_lamp.txt
  • Dernière modification: Le 20/12/2023, 18:08
  • par krodelabestiole