我在所有docker项目上都遇到目录权限错误。这是Laravel中的其中之一。我已经在/ var / www上对目录权限运行了“ chown”,并共享了主机项目文件所在的“ c”驱动器。它与Windows本地/域用户权限有关吗?
Dockerfile
FROM php:7.2-apache
COPY . /var/www
COPY ./vhosts.conf /etc/apache2/sites-available/000-default.conf
WORKDIR /var/www
ENV TERM xterm
COPY ./ssl/server.crt /etc/apache2/ssl/server.crt
COPY ./ssl/server.key /etc/apache2/ssl/server.key
RUN apt-get update
RUN apt-get install -y openssl zip unzip git
RUN docker-php-ext-install mbstring pdo pdo_mysql mysqli && chown -R www-data:www-data /var/www
RUN docker-php-ext-install -j$(nproc) tokenizer bcmath ctype
RUN a2enmod rewrite
RUN a2enmod ssl
RUN service apache2 restart
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
EXPOSE 80
EXPOSE 443
答案 0 :(得分:0)
检查用于运行您的应用程序的用户。由于您是通过命令行挂载卷的,因此该文件夹将以docker
用户的身份挂载。 docker
用户可能会比运行该应用程序的用户具有其他权限,例如àpp`用户无法写入已安装的文件夹。