2017-07-06 6 views
1

J'essaye de construire un Dockerfile./bin/sh: 1: composer: non trouvé

FROM php:7 

RUN mkdir -p /home/winpc/test/laravelApp/app 
WORKDIR /home/winpc/test/laravelApp/app 


COPY composer.json /home/winpc/test/laravelApp/app 
RUN composer install 

COPY . /home/winpc/test/laravelApp/app 

CMD php artisan serve --host=0.0.0.0 --port=8181 
EXPOSE 8181 

Mais quand je lance la commande build, il dit:

docker build -t lar-app . 
/bin/sh: 1: composer: not found 
The command '/bin/sh -c composer install' returned a non-zero code: 127 

Mais quand je viens de taper le compositeur, il affiche correctement les informations je suppose que le problème est avec la commande:

RUN composer install 

Ici j'utilise Ubuntu 14.04

+0

L'image docker que vous essayez de créer ne pas compositeur installé. Le 'RUN composer install' essaie d'exécuter' composer install' sur l'image elle-même, pas sur la machine hôte. Donc, en substance, vous devez d'abord installer le compositeur. – Stacktrace

Répondre

1

Comme le Stacktrac e dit, installez le composeur avant d'exécuter la commande composer.

J'ai ajouté ces lignes:

RUN wget https://raw.githubusercontent.com/composer/getcomposer.org/1b137f8bf6db3e79a38a5bc45324414a6b1f9df2/web/installer -O - -q | php -- --quiet 
RUN mv composer.phar /usr/local/bin/composer 

Ainsi, votre Dockerfile sera:

FROM php:7 

# Install composer: 
RUN wget https://raw.githubusercontent.com/composer/getcomposer.org/1b137f8bf6db3e79a38a5bc45324414a6b1f9df2/web/installer -O - -q | php -- --quiet 
RUN mv composer.phar /usr/local/bin/composer 

RUN mkdir -p /home/winpc/test/laravelApp/app 
WORKDIR /home/winpc/test/laravelApp/app 

COPY composer.json /home/winpc/test/laravelApp/app 
RUN composer install 

COPY . /home/winpc/test/laravelApp/app 

CMD php artisan serve --host=0.0.0.0 --port=8181 
EXPOSE 8181 
+0

mv: ne peut pas stat 'composer.phar': Aucun fichier ou répertoire La commande '/ bin/sh -c mv composer.phar/usr/local/bin/composer' a renvoyé un code différent de zéro: 1 – Kit

+0

Je pense composer.phar ne télécharge pas correctement – Kit

+0

J'ai modifié le Dockerfile. J'ai mis l'installation au tout début. Pouvez-vous s'il vous plaît essayer à nouveau? – Robert