Проблема с разрешениями в контейнере Docker для Symfony2

Я пытаюсь создать образ Docker для начальной загрузки проекта Symfony.
Вот мой Dockerfile:

FROM php:7-apache

LABEL Description = "This image is used to start Symfony3 project"
ENV DIRPATH /var/www/html

# apt-get command
RUN apt-get update && apt-get install -y \
vim \
git
RUN apt-get install -y zlib1g-dev && docker-php-ext-install zip


# Install Composer
RUN curl -sS https://getcomposer.org/installer | php
RUN mv composer.phar /usr/local/bin/composer

# Install the Symfony Installer
RUN curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony
RUN chmod a+x /usr/local/bin/symfony

# Create the php.ini file
RUN cp /usr/src/php/php.ini-development /usr/local/etc/php/php.ini

Сборка и создание контейнера работает хорошо, но у меня есть проблема с разрешением в моем контейнере.
Когда я иду в свой app_dev.php, У меня есть это сообщение:

Вам не разрешен доступ к этому файлу. Проверьте app_dev.php для получения дополнительной информации.

Видимо, я могу получить доступ к этому файлу только с localhost.
Кроме того, PHP не может удалить или создать что-либо в моем контейнере.
Например, у меня есть следующая ошибка при запуске:

$php app/console cache:clear
Failed to remove directory "/var/www/html/app/cache/dev_old/doctrine

Как я могу решить это в моем Dockerfile?

4

Решение

Наконец-то нашел его через несколько недель:

Добавьте это в вас Dockerfile. Это решило вопрос разрешения.

# Workaround for write permission on write to MacOS X volumes
# See https://github.com/boot2docker/boot2docker/pull/534
RUN usermod -u 1000 www-data
5

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector