пытаюсь создать стек веб-разработки и не могу получить рабочую папку поставщика, содержащую «файлы autoload.php и композитор.lock».
Мой специально созданный образ PHP устанавливается нормально, без ошибок. однако папка «vendor» с файлами «autoload.php и композитор.lock» автоматически не создается.
Я читаю различные учебные пособия и т. д. последние пару дней и, похоже, не добился никакого прогресса.
Я новичок в Docker, поэтому, возможно, мне чего-то не хватает...
мой файл докера:
FROM php:fpm
# Install dependencies and PHP extensions
RUN apt-get update && apt-get upgrade -y && \
apt-get install -y libzip-dev zip nano && \
docker-php-ext-install pdo pdo_mysql && \
pecl install xdebug && docker-php-ext-enable xdebug && \
apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libpng-dev && \
docker-php-ext-configure gd --with-freetype --with-jpeg && \
docker-php-ext-install -j$(nproc) gd && \
docker-php-ext-install zip
# Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
# Install Composer
COPY --from=composer/composer:latest-bin /composer /usr/bin/composer
# Set the COMPOSER_ALLOW_SUPERUSER environment variable
ENV COMPOSER_ALLOW_SUPERUSER 1
# Copy the code into the container
#COPY . /app
COPY . /var/www/html/
# Set the working directory to /var/www/html/
WORKDIR /var/www/html/
#WORKDIR /app/
# Install PHPMailer
RUN composer require phpmailer/phpmailer
# Run composer Install
RUN composer install
RUN composer dump-autoload
Мой файл compose.yml:
version: '3.8'
services:
NGinX:
image: nginx:latest
container_name: NGinX
hostname: NGinX
security_opt:
- no-new-privileges:true
ports:
- 80:80/tcp
- 443:443/tcp
dns:
- 8.8.8.8
- 1.1.1.1
environment:
- PUID=1029
- PGID=100
- TZ=Europe/London
- UMASK=022
volumes:
- /volume1/docker/WebDev/NGinX/nginx.conf:/etc/nginx/conf.d/nginx.conf
- /volume1/docker/WebDev/WWW:/app
restart: unless-stopped
depends_on:
- php
php:
build:
context: .
dockerfile: PHP.dockerfile
# image: php:fpm
container_name: PHP
hostname: PHP
security_opt:
- no-new-privileges:true
environment:
- PUID=1029
- PGID=100
- TZ=Europe/London
- UMASK=022
volumes:
- /volume1/docker/WebDev/WWW:/app
- /volume1/docker/WebDev/WWW/Vendor # stop being over written by the above
- /volume1/docker/WebDev/PHP/local-php.ini:/usr/local/etc/php/conf.d/local.ini
restart: unless-stopped
Подробнее здесь: https://stackoverflow.com/questions/786 ... dor-folder