使用dockerfile安装COMPOSER.json

时间:2018-10-17 14:30:19

标签: php docker docker-compose composer-php dockerfile

  

错误:服务'api'构建失败:COPY失败:统计   /var/lib/docker/tmp/docker-builder719265864/composer.json:否这样   文件或目录

Docker-compose.yml

volumes:
    - .:/var/www
    - .:/var/www/vendor/

Dockerfile

# Install composer
WORKDIR /var/www/

RUN apt-get update && \
        apt-get install -y --no-install-recommends git zip

RUN curl --silent --show-error https://getcomposer.org/installer | php

COPY ./ /var/www/

RUN php composer.phar install

我的composer.json位于文件夹中的/ src中。

"require": {
    "php": ">=5.6",
    "slim/slim": "^3.11",
    "slim/php-view": "^2.0",
    "monolog/monolog": "^1.17"
},

我想在构建时运行composer.json。

1 个答案:

答案 0 :(得分:0)

# Install composer
RUN echo pwd: `pwd` && echo ls: `ls`  # outputs:
                                      # pwd: /
                                      # ls:

#Copiando projeto para o container
COPY composer.lock /var/www/html
COPY composer.json /var/www/html
COPY logs /var/www/html/logs
COPY public /var/www/html/public
COPY src /var/www/html/src

VOLUME /var/www/html
WORKDIR /var/www/html
RUN pwd

# Allow Composer to be run as root
ENV COMPOSER_ALLOW_SUPERUSER 1

# Setup the Composer installer
RUN curl -o /tmp/composer-setup.php https://getcomposer.org/installer \
  && curl -o /tmp/composer-setup.sig https://composer.github.io/installer.sig \
  && php -r "if (hash('SHA384', file_get_contents('/tmp/composer-setup.php')) !== trim(file_get_contents('/tmp/composer-setup.sig'))) { unlink('/tmp/composer-setup.php'); echo 'Invalid installer' . PHP_EOL; exit(1); }" \
  && php /tmp/composer-setup.php \
  && chmod a+x composer.phar \
  && mv composer.phar /usr/local/bin/composer

# Install composer dependencies
RUN echo pwd: `pwd` && echo ls: `ls`  # outputs:
                                      # pwd: /var/www/html
                                      # ls:

RUN /usr/local/bin/composer install

#RUN /usr/local/bin/composer update


# Install composer dependencies
RUN echo pwd: `pwd` && echo ls: `ls`  # outputs:
                                      # pwd: /var/www/html
                                      # ls:
相关问题