La configuration locale de Docker pour WordPress continue d’échouer (Windows 11) – CMS et WordPress – SitePoint Forums

Publié le 14 juillet 2023 par Mycamer

J’ai lutté littéralement pendant plus de 12 heures au cours des deux dernières semaines pour essayer de faire fonctionner Docker en tant qu’environnement local pour développer un thème WordPress. J’ai parcouru tutoriel après tutoriel, mais même en copiant le code EXACTEMENT à partir des tutoriels, je continue à avoir des erreurs.

Là où je semble avoir le problème, c’est que je peux faire fonctionner une configuration où il installe WordPress mais ne monte pas de volume pour contenir mes fichiers locaux, mais à la minute où j’essaie d’ajouter cela, tout échoue.

J’utilise Docker Desktop sur une machine Windows 11.

J’ai essayé trop de choses pour les rassembler toutes ici, mais ces deux résument le problème clé que j’ai.

1) Utiliser le code des ressources pour développeurs WordPress

J’ai copié EXACTEMENT le code de https://developer.wordpress.com/2022/11/14/seetup-local-development-environment-for-wordpress/. J’ai enregistré le fichier en tant que docker-compose.yml fichier, est allé dans ce répertoire à partir de PowerShell et a exécuté docker-compose up.

Celui-ci ne parvient tout simplement pas à se lancer du tout. Le terminal Docker produit une longue série d’erreurs d’entrée/sortie mais la première semble être : WordPress not found in /var/www/html.

Pour référence, le code copié est le suivant :

version: "3.6"
services:
 wordpress:
   image: wordpress:latest
   container_name: wordpress
   volumes:
     - ./wordpress:/var/www/html
   environment:
     - WORDPRESS_DB_NAME=wordpress
     - WORDPRESS_TABLE_PREFIX=wp_
     - WORDPRESS_DB_HOST=db
     - WORDPRESS_DB_USER=root
     - WORDPRESS_DB_PASSWORD=password
   depends_on:
     - db
     - phpmyadmin
   restart: always
   ports:
     - 8080:80
 
 db:
   image: mariadb:latest
   container_name: db
   volumes:
     - db_data:/var/lib/mysql
   environment:
     - MYSQL_ROOT_PASSWORD=password
     - MYSQL_USER=root
     - MYSQL_PASSWORD=password
     - MYSQL_DATABASE=wordpress
   restart: always
 
 phpmyadmin:
   depends_on:
     - db
   image: phpmyadmin/phpmyadmin:latest
   container_name: phpmyadmin
   restart: always
   ports:
     - 8180:80
   environment:
     PMA_HOST: db
     MYSQL_ROOT_PASSWORD: password
 
volumes:
 db_data:

2) Utilisation du code de l’image WordPress sur Docker Hub

Encore une fois, copiez le code exactement à partir de l’image officielle de WordPress sur https://hub.docker.com/_/wordpress. Celui-ci me permet d’installer WordPress mais ne crée pas de répertoire avec lequel je peux travailler localement.

Pour référence, le code copié est :

version: '3.1'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:

J’admets franchement que malgré la lecture de dizaines de tutoriels, il y a beaucoup de choses que je ne comprends pas vraiment à propos de Docker. Mais cela dit, si j’ai bien compris, le volumes La commande concerne le montage des dossiers.

Il semble que la principale différence entre les deux fichiers dans #1 et 2 c’est ça :

Dans #1le service WordPress inclut une direction pour monter un volume comme ceci : - ./wordpress:/var/www/html. Ça aussi n’a pas répertoriez un volume nommé WordPress en bas de la page.

Effectivement, si je prends le code de travail de #2 et apportez ces deux modifications, j’obtiens une autre longue série si des erreurs d’entrée/sortie, bien que celle-ci commence par :

WordPress not found in /var/www/html - copying now...
find: '.': Cannot allocate memory

J’ai fait une recherche sur cette deuxième erreur, mais il semble que des personnes parlent de noyaux et de gestion de la mémoire et je ne sais pas exactement comment la corriger.

J’apprécierais vraiment toute aide ici! Je sais que je fais peut-être quelque chose de stupide, mais c’est déconcertant de copier directement du code à partir de sources fiables et de les faire échouer comme ça.

to www.sitepoint.com


Abonnez-vous à notre page Facebook: https://www.facebook.com/mycamer.net
Pour recevoir l’actualité sur vos téléphones à partir de l’application Telegram cliquez ici: https://t.me/+KMdLTc0qS6ZkMGI0
Nous ecrire par Whatsapp : Whatsapp +44 7476844931