2017-02-11 6 views
0

Ich versuche, einen Web-Stack mit Docker zu bauen mit "php, MariaDB, ngnix, Komponist" Ich versuche nur Behälter aus offiziellen Repositories zu verwendenDocker komponieren Bahnstapel

nach meiner Docker-compose.yml

version: '2' 

services: 
    nginx: 
     image: nginx 
     container_name: nginx 
     ports: 
     - "8000:80" 
    mariadb: 
     image: mariadb 
     container_name: mariadb 
     ports: 
     - "3306:3306" 
     volumes: 
     - ./mysql:/var/lib/mysql 
     environment: 
     MYSQL_USER : root 
     MYSQL_ROOT_PASSWORD: root 
    php: 
     image: php:fpm 
     container_name: php 
     ports: 
     - "80:80" 
     volumes: 
     - ./php/:/var/www/html/ 
    composer: 
     image: composer 
     container_name: composer 
     volumes_from: 
     - php 
     working_dir: /var/www/ 
     volumes: 
     - ./composer2:/app 

diese docker-compose richtig funktioniert, aber ich verstehe nicht, warum Komponist nach unten schnell nach ‚docker-komponiert up -d‘

PS: Mein erstes Ziel ist es, diesen Stapel für Symfony2 zu verwenden oder silex

Antwort

0

Der Composer-Container wird sofort beendet, da er nicht als "Daemon" ausgeführt werden soll. Wenn Sie keinen Befehl geben, hat der Komponist, einfach gesagt, nichts zu tun. Wie auch immer, wenn es "etwas zu tun" gibt, dann führt es es aus und endet.

Sie können es durch interaktive Shell wie folgt verwenden:

docker run --rm --interactive --tty --volume $PWD:/app composer install 

Weitere Beispiele in der "Verwendung" Abschnitt befinden sich hier: https://hub.docker.com/_/composer/