Gibt es eine Docker-Versionsanforderung für Buckle on-premises? Nach öffentlichen Angelegenheiten ist die Antwort im Grunde "ja, und die alte Version ist leicht zu übergehen." Das häufigste Phänomen ist, dass man beim Ausführen von 'Make Web' direkt 'unbekannte Kurzschrift-Flag: 'f' in -f' meldet, was normalerweise nicht daran liegt, dass das Coze-Programm selbst defekt ist, sondern daran, dass Ihre Docker/Compose-Version zu alt ist, um das derzeit im Repository verwendete Befehlsformular überhaupt zu erkennen.
Im offiziellen Repository verwendet das 'Web'-Ziel von 'Makefile' direkt 'docker compose -f docker/docker-compose.yml --env-file... Up -d' ist geschrieben. Allerdings basiert dieser Startvorgang standardmäßig auf dem Befehl 'docker compose', statt auf der alten 'docker-compose'-v1-Gewohnheit.
Warum alte Versionen leicht umkehren lassen
Denn das Gameplay von Docker in der 18.x-Ära unterscheidet sich bereits stark vom aktuellen Compose. Vielleicht benutzt man immer noch das alte Binärcode oder das alte Plugin, aber das Startskript des Repositoriums ist bereits mit den neuen Befehlen organisiert. Daher melden Parameter wie '-f', '--profile' und 'up -d' direkt Fehler in der alten Umgebung, was wie eine "Button-Inkompatibilität" aussieht, aber tatsächlich stimmt das Startwerkzeug nicht überein.
Eine relativ stabile Urteilsmethode
- Führe zuerst 'docker compose version' aus, um zu sehen, ob deine Umgebung den neuen Befehl erkennt.
- Wenn du nur 'docker-compose version' verwenden kannst, bedeutet das normalerweise, dass die Umgebung zu alt ist.
- Wenn die Befehlsparameter 'make web' als falsch gemeldet werden, aktualisieren Sie zuerst die Plugins Docker Engine und Compose.
Die offizielle README positioniert das Projekt bereits als lokale Bereitstellungslösung, die von Docker Compose gestartet wurde, daher ist die unkomplizierteste Idee nicht, das Repository-Skript zu "umgehen", sondern die Hostumgebung in einen Zustand zu bringen, in dem sie diese Befehlssätze direkt ausführen kann. Auf diese Weise gibt es weniger nachträgliche Fehlersuche.
Ein-Satz-Schluss
Button: Lokale Bereitstellung ist nichts, das nur einen Docker ausführen kann, zumindest muss er 'docker compose' normal verwenden können. Wenn du noch in 18.x + Compose v1 bist, upgrade zuerst die Umgebung und sprich dann über Buttons.