添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
快乐的板凳  ·  站点地图 - 老梁`s ...·  5 月前    · 
酒量小的墨镜  ·  无法登录 Google Drive ...·  6 月前    · 
爱运动的帽子  ·  Learn Chinese ...·  6 月前    · 

J'ai donné la semaine passé une formation sur deux jours à docker et docker compose . Les stagiaires étaient équipés pour certains de postes sous linux et d'autres sous windows 10.

Pas de soucis sur les petites images ou les petits projets, mais lors de l'installation de drupal-project avec la stack docker4drupal , nous avons rencontrés pas mal de soucis avec les machines sous windows. Outre le fait que la commande composer create-project était très longue (une vingtaine de secondes sous linux) elle tombait la plupart du temps en timeout...

Install of drupal/core failed The following exception is caused by a process timeout Check https://getcomposer.org/doc/06-config.md#process-timeout for details In Process.php line 1204: The process "'/usr/bin/unzip' -qq '/var/www/html/drupal/vendor/composer/tmp-d8567404fa0141121df2ec9512c3daa3' -d '/var/www/html/drupal/vendor/composer/bb103905'" exceeded the timeout of 300 seconds.

En creusant un peu nous nous sommes rendu compte qu'il s'agissait d'une simple tache de dezippage qui finissait par planter.

Ce sont en fait les temps d'accès sur les volumes windows, montés par exemple sur c:/ ou tout autre disque géré par windows qui sont très lents

Il est possible d'améliorer grandement ça en utilisant le système de fichier linux fourni par WSL2 ( Windows Subsystem for Linux)

Pour commencer dans les options de Docker Desktop, vérifiez bien que le wsl2 est bien activé :

Et après quelques secondes et un "reboot" de la  machine ubuntu, le système est installé, vous pouvez maintenant fermer la fenêtre.

Retour dans les options de Docker Desktop, dans la section Resources / WSL Integration, activez l'intégration avec la distribution fraichement installée :

Nous allons naviguer dans le repertoire Ubuntu-22.04 dans le dossier home/[UTILISATEUR] dans lequel je vais créer un répertoire de travail (l'équivalent du c:/wamp/www) que je vais appeler www car les habitudes restent ! Je créé dans ce dossier un sous dossier drupal où je reprends les fichiers docker-compose , Makefile et .env fournis par docker4drupal.

docker compose exec php composer create-project drupal-composer/drupal-project:9.x-dev mon-dossier --no-interaction

et cette fois, en une vingtaine de secondes, c'est un succès !

En ayant marre d'avoir à gérer x versions de de NodeJS sur ma machine avec pour chacune ses dépendances et incompatibilités, et de devoir se souvenir pour chaque projet quelle version utiliser, j'ai fini par externaliser cette gestion à docker, comme je le fais déjà depuis longtemps pour php, mysql, SolR...

Comme souvent quand je commence un support de formation, je passe (perd ?) du temps à modifier mon process pour gérer mes slides. Après un site drupal me permettant de gérer mes support , j'ai testé une nouvelle approche, plus véloce encore.

J'utilise maintenant docker-compose pour l'ensemble de mes projets, principalement avec la formidable pile « docker4drupal ».

Si vous utilisez une image mysql, mariadb (ou dérivée comme wodby/mariadb de la suite docker4drupal ) alors vous savez que par défaut une seule base de données est initialisée lors de la création du conteneur.

Une fois encore, Monsieur Kgaut ne se laisse pas abattre par l'adversité et ne nous a pas laissé tomber.

Merci pour avoir assuré le SAV et permettre à toute l'équipe de rentrer de plein pied dans une nouvelle dimension.

Kevin Gautreau, alias kgaut .

Je vis à côté de Clermont-Ferrand en Auvergne

Je suis developpeur PHP Freelance, spécialisé sur Drupal.

Je bidouille des pages web à titre professionnel depuis 2009, et pour m'amuser depuis bien plus longtemps.

Découvrez des périphériques, composants, meubles... Que j'utilise et recommande, le tout avec des liens honteusement affiliés.