Php 作曲家while';docker compose';与山绑定

Php 作曲家while';docker compose';与山绑定,php,docker,docker-compose,composer-php,bind,Php,Docker,Docker Compose,Composer Php,Bind,我尝试在数据库旁边为php应用程序构建一个docker compose项目,该项目自动部署在开发人员机器上。这不是一个问题,但卡住的地方是composer安装 我希望有一个从主机绑定到容器中的目录,这样开发人员就能够更改代码,并且能够在docker实例中立即看到它。这意味着 使用PHP和Web服务器部署容器 部署数据库 将本地源目录绑定到PHP容器中 在该目录中执行composer安装 目录树类似于 / -php -- src -- Dockerfile -postgres -- Dockerf

我尝试在数据库旁边为php应用程序构建一个docker compose项目,该项目自动部署在开发人员机器上。这不是一个问题,但卡住的地方是
composer安装

我希望有一个从主机绑定到容器中的目录,这样开发人员就能够更改代码,并且能够在docker实例中立即看到它。这意味着

  • 使用PHP和Web服务器部署容器
  • 部署数据库
  • 将本地源目录绑定到PHP容器中
  • 在该目录中执行composer安装
  • 目录树类似于

    /
    -php
    -- src
    -- Dockerfile
    -postgres
    -- Dockerfile
    docker-compose.yml
    
    我附上了我的
    docker compose.yml
    和PHP
    Dockerfile
    中的代码片段,任何人都知道它失败的原因,或者看到顺序中的问题或其他问题,甚至可以解释我必须注意的问题吗?那太好了

    Dockerfile:

    FROM xy
    
    RUN curl -sS https://getcomposer.org/installer | php \
            && mv composer.phar /usr/local/bin/ \
            && ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
    
    COPY ./src /var/www/html
    WORKDIR /var/www/html/
    
    RUN composer install --prefer-source --no-interaction
    
    Docker编写文件:

    version: '3.4'
    services:
        php:
            build: ./php
            container_name: "php"
            volumes:
                 - ./php/src:/var/www/html
    
        postgres:
            image: postgres:10.4-alpine
            container_name: "postgres"
    

    任何错误消息都是有用的问题可能是
    composer install
    命令正在运行并正确终止,但之后容器无需执行任何操作?我以前遇到过postgres容器的问题,因为它的启动速度比我的php容器慢。在php容器配置中使用
    dependens\u on
    以正确的顺序启动它们可能是因为当我正确理解了一篇文章[1]时,我可以在目录e中的构建过程中做任何我想做的事情。g、 "/var/www/html”。当我在该目录上装载卷时(即使装载发生在composer安装之前),之前的层中的所有内容都将消失,并且具有某种优先级。[1]