如何使用使用docker-compose和dockerfile在卷上运行命令?

时间:2018-09-30 10:42:28

标签: docker docker-compose composer-php

我正在尝试设置运行php,composer和mysql堆栈的docker-compose。

我有以下docker-compose.yaml:

version: '3'

services:
  provision:
    container_name: 'docker_stack'
    working_dir: /var/www/html
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - ./:/var/www/html
      - ./.conf/:/etc/apache2/sites-enabled/

在我的Dockerfile中:

FROM php:7.2-apache


RUN a2enmod rewrite

RUN service apache2 restart

WORKDIR /var/www/html/
RUN php init --env="Development" --overwrite=All

但是最后一条命令失败,因为它找不到作为php脚本的初始化文件。

还有如何将作曲家附加到它?

1 个答案:

答案 0 :(得分:0)

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

RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN composer --version

这就是我在Dockerfile中用于安装composer的东西。

另外,您是否尝试使用

RUN php /var/www/html/init --env="Development" --overwrite=All