代码之家  ›  专栏  ›  技术社区  ›  user2707590

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

  •  0
  • user2707590  · 技术社区  · 8 年前

    我有以下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脚本的init文件。

    还有,我如何将composer附加到它?

    1 回复  |  直到 8 年前
        1
  •  0
  •   Dominic Wehrmann    8 年前
    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