**Dies ist eine alte Version des Dokuments!**

Composer Kommandos via Docker direkt ausführen

Mit Docker ist es auch möglich, direkt composer Kommandos auszuführen. Zum Beispiel, um ein neues Composer Projekt anzulegen:

docker run --rm --interactive --tty --user $(id -u):$(id -g) --volume $PWD:/app composer ...

Um beispielsweise ein neues Drupal 8 Projekt im aktuellen Verzeichnis anzulegen, sieht der Befehl wie folgt aus:

docker run --rm --interactive --tty --user $(id -u):$(id -g) --volume $PWD:/app composer create-project drupal-composer/drupal-project:8.x-dev some-dir --stability dev --no-interaction

Und weil dieses Kommando mit den Parametern ziemlich lang ist, kann man das Kommando composer auch mittels einer Shell Funktion ausführen lassen. Einfach in die Funktion in die lokale .bashrc oder .zshrc eintragen:

composer () {
  tty=
  tty -s && tty=--tty
  docker run \
    $tty \
    --interactive \
    --rm \
    --user $(id -u):$(id -g) \
    --volume /etc/passwd:/etc/passwd:ro \
    --volume /etc/group:/etc/group:ro \
    --volume $(pwd):/app \
    composer "$@"
}

Das ist besonders praktisch, wenn man öfter composer Kommandos lokal ausführen möchte.

Siehe Docker Composer image