Bonjour,
Voilà maintenant 4ans que je me pose cette question. J'ai abandonné l'utilisation de Composer + Docker + Phpstorm car ensemble ils sont inutilisables. Aujourd'hui je me remets sur la question car docker est vraiment un outil extraordinaire. Malheureusement j'arrive une fois de plus aux mêmes conclusions. J'ai surement loupé une astuce quelque part. En espérant comprendre comment vous faites pour travailler avec docker sur un projet PHP. Voici mon problème :
Dans un projet PHP, Docker utilise le montage de dossier (chez moi win/mac) dans le lequel se trouve le dossier Vendor au combien gourmand utilisé dans 99% des projets PHP. Ce dossier de montage ralenti considérablement le temps d'exécution d'une page ( mac 4sec et surtout win 17sec coreI7 avec Ssd). C'est impraticable si on veut travailler sérieusement. La solution que j'ai trouvé est de sortir vendor et accessoirement cache & session du container. Nombreuses ressources sont dispos en ligne. Perso j'utilise :
php:
build: .docker/php7-fpm
volumes:
- ./:/www
- /www/vendor
- /www/var/cache
- /www/var/sessions
De cette façon je récupère un temps d'exécution normal pour travailler. Sauf que maintenant je n'ai plus accès au dossier vendor sur ma machine locale. Il est donc impossible pour phpstorm de parcourir le projet. Tous les outils de phpstorm sont non fonctionnels malgré la configuration de docker en remote engine dans phpstorm.... phpUnit a besoin de autoload.php pour se lancer.. Bref le dossier vendor en local est aussi indispensable si on veut travailler sérieusement.
Je me retrouve donc à avoir 2 dossiers vendor (1 sur la VM et 1 sur ma machine locale)... La config est à s'arracher les cheveux...
Donc, tous ceux qui utilisent DOCKER en dev pour un projet php, vous faites comment ???? J'ai surement loupé qqchose... Comment expliquer autant de succès alors qu'en dev je le trouve impraticable.
Merci pour vos conseils.
Olivier
Hello ! je n'ai jamais utilisé docker mais avec phpstorm, tu peux rajouter un ou des dossiers au niveau de ton projet. Il faut que tu ailles dans Settings -> directories et à ce niveau, tu peux rajouter le dossier que tu souhaite (je n'ai pas l'IDE devant moi pour t'indiquer où cliquer).