У меня есть проект Symfony 7, работающий с php-fpm 8.3 и nginx. Это файл Dockerfile, для обоих контейнеров (php и nginx) рабочий каталог — /app.
В настоящее время я загружаю файлы изображений в /app/public/ загружается, но файл загружается в контейнер php, и nginx не может его обслужить. Найдите файл /etc/nginx/default.conf.template, который используется в точке входа для запуска nginx в сочетании с командой envsubst '${APP_ENV} ${APP_DEBUG}'
У меня есть проект Symfony 7, работающий с php-fpm 8.3 и nginx. Это файл Dockerfile, для обоих контейнеров (php и nginx) рабочий каталог — [b]/app[/b]. В настоящее время я загружаю файлы изображений в /app/public/ загружается, но файл загружается в контейнер php, и nginx не может его обслужить. Найдите файл /etc/nginx/default.conf.template, который используется в точке входа для запуска nginx в сочетании с командой [b]envsubst '${APP_ENV} ${APP_DEBUG}'[/b] [code]#Dockerfile FROM composer:2 as builder WORKDIR /var/www COPY composer.json composer.lock ./ ARG APP_ENV=dev ENV composer_dev="composer install --no-interaction --optimize-autoloader --no-scripts" ENV composer_prod="$composer_dev --no-dev" RUN apk add zlib-dev libpng-dev && docker-php-ext-install gd && docker-php-ext-enable gd RUN if [ "$APP_ENV" = "prod" ]; then $composer_prod; else $composer_dev; fi
FROM MyOwnTaggedImage:latest as php COPY --link --from=builder --chown=nginx:www-data /var/www/vendor ./vendor RUN bin/console tailwind:build --no-interaction && bin/console asset-map:compile && bin/console assets:install public COPY docker/php/lunarlab.conf /usr/local/etc/php-fpm.d/lunarlab.conf USER nginx
FROM nginx:alpine as nginx WORKDIR /app COPY docker/nginx/nginx.conf /etc/nginx/nginx.conf COPY docker/nginx/conf.d/default.conf /etc/nginx/default.conf.template COPY ./docker/nginx/entrypoint /usr/local/bin/entrypoint COPY --link --from=php --chown=nginx:www-data /app/public public RUN chmod +x /usr/local/bin/entrypoint ENTRYPOINT ["/usr/local/bin/entrypoint"]
nginx: image: lunarlab/nginx build: context: . dockerfile: Dockerfile target: nginx working_dir: /app environment: APP_ENV: ${APP_ENV:-dev} ports: - ${APP_PORT:-80}:80 # Before enabling mounting the public directory make sure to have in the local machine all the assets required by the application # this can be achieved by running `bin/console asset-map:compile` and `bin/console tailwind:build` volumes: - ./docker/nginx/conf.d/default.conf:/etc/nginx/default.conf.template links: - php
#/etc/nginx/default.conf.template upstream backend { server php:9000; }