You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Docker部署Symfony 6时的权限拒绝问题

Symfony 6容器化后启动出现500错误排查求助

刚学习Docker,近期尝试将Symfony 6应用容器化。配置了一套基础部署环境,但启动服务器后出现严重的500错误,错误内容过多无法全部粘贴,已附上截图。

操作步骤:先构建镜像,将生成的镜像关联到docker-compose.yml文件后启动容器。

排查情况:重点查看错误首行,发现路径存在异常,但无法通过现有方法修改。怀疑错误源于apache.conf配置有误,但路径看起来正确,因此无法确定问题所在。

以下是我的Docker配置文件:

Dockerfile

FROM php:8.2-apache

ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/

RUN chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug

RUN curl -sSk https://getcomposer.org/installer | php -- --disable-tls && \
    mv composer.phar /usr/local/bin/composer

RUN apt update && apt install -yqq nodejs npm

COPY . /var/www/

COPY ./docker/apache.conf /etc/apache2/sites-available/000-default.conf

ENV COMPOSER_ALLOW_SUPERUSER=1

RUN cd /var/www/ && \
    composer install && \
    npm install --force && \
    composer require symfony/webpack-encore-bundle && \
    composer require symfony/dotenv && \
    npm run build

WORKDIR /var/www/

EXPOSE 80

docker-compose.yml

version: '3'

services:
  database:
    image: postgres:${POSTGRES_VERSION:-15}-alpine
    environment:
      POSTGRES_DB: ${POSTGRES_DB:-app}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-!ChangeMe!}
      POSTGRES_USER: ${POSTGRES_USER:-symfony}
    volumes:
      - database_data:/var/lib/postgresql/data:rw

  app:
    image: sha256:6ffb6a8bd9083d4f5f8723a75c216c926669aafe29000886fd071f580eecf529
    ports:
      - "8080:80"
    environment:
      DATABASE_URL: postgresql://symfony:!ChangeMe!@127.0.0.1:5432/app?serverVersion=15&charset=utf8
  
volumes:
  database_data:

apache.conf

<VirtualHost *:80>
    ServerName localhost

    DocumentRoot /var/www/public
    DirectoryIndex /index.php

    <Directory /var/www/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

        FallbackResource /index.php
    </Directory>


    ErrorLog /var/log/apache2/project_error.log
    CustomLog /var/log/apache2/project_access.log combined

</VirtualHost>

我会继续自行排查,若找到问题根源会回来说明。感谢任何帮助我解决该错误的人,祝大家晚安。


内容的提问来源于stack exchange,提问作者MrMarrant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 19:03:21