Я хочу скопировать все файлы во время процесса установки в файл docker-compose.yml
.
Если я запустите:
$ git clone https://github.com/laravel/laravel.git laravel-app
$ cd laravel-app
$ docker run --rm -v $(pwd):/app composer install
Он скопирует все новые файлы из контейнера на хост во время Процесс установки в контейнере docker.
Итак, я увижу новую папку vendor
и файл composer.lock
в моем каталоге laravel-app
после установки.
Но если я установочный том в docker-compose.yml
:
version: '3'
services:
#PHP Service
app:
build:
context: .
dockerfile: Dockerfile
container_name: app
restart: unless-stopped
tty: true
environment:
SERVICE_NAME: app
SERVICE_TAGS: dev
working_dir: /var/www
volumes:
- ./:/var/www
- ./php/local.ini:/usr/local/etc/php/conf.d/local.ini
networks:
- app-network
А затем настройте процесс установки в Dockerfile
:
FROM php:7.4.4-fpm
# Set working directory
WORKDIR /var/www
# Install dependencies
RUN apt-get update && apt-get install -y
# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Copy existing application directory contents
COPY . /var/www
# Install composer.json dependencies
RUN composer install # <<-- !this one!
Он не будет копировать папку vendor
и composer.lock
файл обратно в мой хозяин.
Горячий, чтобы это произошло?