Задать вопрос
@Lobanov

Получаю Permission denied при запуске composer из Docker, как исправить?

Привет.

Есть Ubuntu Desktop 20.04 - свежая установка, поставил Docker Desktop для удобства управления контейнерами (хотя уже сомневаюсь в этом, т.к. через консоль все стараюсь делать).

Создал 3 контейнера для проекта:
1. Nginx
2. PHP-FMP
3. PHP-CLI

В Dockerfile PHP-CLI указываю следующее
FROM php:8.2-cli-alpine

RUN mv $PHP_INI_DIR/php.ini-development $PHP_INI_DIR/php.ini

RUN addgroup -g 1000 app && adduser -u 1000 -G app -s /bin/sh -D app

COPY --from=composer:2 /usr/bin/composer /usr/local/bin/composer

WORKDIR /app

USER app


Когда происходит установка зависимостей, выпадает ошибка
file_put_contents(./composer.json): Failed to open stream: Permission denied


Права на папку на локальном компе, которую я монтирую в образ 775, когда меняю на 777 все работает норм, composer спокойно запускается из докера и устанавливаются зависимости. Подскажи пожалуйста почему создаваемый юзер в докере не может писать в папку с моим проектом без установления прав 777 на эту папку? Хочу понять этот момент с правами.
  • Вопрос задан
  • 1373 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 2
colonel
@colonel
Разработчик PHP, Laravel
sudo usermod -aG docker ${USER}
И выйти/зайти в систему
Ответ написан
@Lobanov Автор вопроса
Проблема была сугубо в правах каталога, где лежит мой проект, т.е. эту папку я монтирую в Docker. Так как права на папку были 775 соответственно пользователь из Docker используя php-cli не мог писать в эту папку что-либо, если меняем права на 773 (т.е. позволяем остальным юзерам писать в папку и производить запуск файлов) - все начинает работать. Из-за того, что я работаю на локальной машине и кроме меня никого на ней нет, решил выставить права 777 на каталог где лежим мой проект.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽