ADD . /code
VOLUME /build
RUN some composer shit in /code И rsync /code into /build
RUN touch /build/finished
ENTRYPOINT проверка есть ли файл /code/finished И ТОГДА rsync из /build в /code, потом start from /code
Я, кстати, не совсем понимаю, что там в этом образе php:7.4-fpm на самом деле запускается. Потому что ентрипоинта у меня вообще нет в докерфайле. И в композе тоже про это никаких директив. Тем не менее оно запускается, видимо ориентируясь лишь на директиву working_dir: в композе и докерфайле, соотвественно.