Ich benutze Docker für die Entwicklung und in der Produktion für Laravel-Projekt. Ich habe eine etwas andere Dockerdatei für Entwicklung und Produktion. Zum Beispiel mounte ich ein lokales Verzeichnis in den Docker-Container in der Entwicklungsumgebung, so dass ich für jede Änderung im Code nicht docker build machen muss.So konfigurieren Sie verschiedene Dockerfiles für Entwicklung und Produktion
Da angehängtes Verzeichnis nur verfügbar ist, wenn der Docker-Container ausgeführt wird Ich kann keine Befehle wie "composer install" oder "npm install" in dockerfile für die Entwicklung eingeben.
Momentan verwalte ich zwei docker Dateien, gibt es eine Möglichkeit, dass ich dies mit einer einzelnen docker Datei tun kann und entscheide welche Befehle ausgeführt werden sollen, wenn docker erstellt wird, indem Parameter gesendet werden.
Was ich zu erreichen versuche, ist
In Docker Datei
...
IF PROD THEN RUN composer install
...
Während Docker
docker build [PROD] -t mytag .
Es ist am besten, das gleiche zu verwenden und zu überlagern ay Ihre dev-Anforderungen an das Produktionsbild. – Matt
Mögliches Duplikat von [Wie erstelle ich Docker-Images, wenn meine Entwicklungsumgebung meine Codebase in den Container einbindet?] (Https://stackoverflow.com/questions/40914696/how-do-i-build-docker-images-when- my-development-environment-mounts-my-codebase – Matt