Скопируйте и выберите файлы в docker bind mount во время выполнения - PullRequest
0 голосов
/ 18 января 2020

У меня есть nginx и wordpress в docker контейнерах, которые совместно используют монтирование тома (то есть сопоставлено с файлами на диске) для /var/www/html.

Во время выполнения мне нужно добавить файлы в сопоставленный каталог, chown их, и для их использования. Они появляются в томе, но их владелец не прав, поэтому их нельзя использовать по nginx / wordpress.

(Обычно совет состоит в том, чтобы сделать это в Dockerfile, но в данном случае это не применимо. Я не изменяю приложение, я просто добавляю к тому, что не эфемерно.)

Когда я останавливаюсь и запускаю приложения docker (nginx и wordpress), все работает. Но он не работает в режиме онлайн.

В родительском каталоге есть chmod 2775 и chown -R bob:www-data. Когда я копирую туда файлы во время выполнения, я делаю это как bob. Но nginx по-прежнему не может получить доступ к этим новым файлам (404).

Итак, как мне копировать и разбивать файлы на монтируемое устройство во время выполнения?

1 Ответ

1 голос
/ 18 января 2020

Вам следует убедиться, что вы используете не только одно и то же имя пользователя, но и один и тот же UID и GID (если у вас есть пользовательский bob в docker и хосте, но UID и GID не совпадают, вы получите разрешения вопросы).

Есть хорошее объяснение тому, что на этом другом посте .

...