php - COMPOSER.json 与 dockerfile 一起安装
问题描述
错误:服务“api”构建失败:复制失败:stat /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。
解决方案
# 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:
推荐阅读
- matlab - Matlab-如何在矩阵中找到数字的相邻元素?
- c++ - 为什么我的静态分析器找不到潜在的未初始化读取?
- python - 在 python 3 中无法访问(嵌套)枚举类型(proto3)
- grafana - 在influxdb中查询时如何写case?
- python - 在python中使用递归函数和结构类型?
- r - 使用 sparklyr 读取固定宽度的文件
- angular - pdfviewer:无法读取未定义的属性“FontInspector”?
- java - 打印在彼此下方格式化的两行
- firebase - 如何使用 rnfirebase 在 react-native android 中发送带有图像的推送通知
- java - Wildfly Swarm:配置自定义数据源的问题