Nordihan
@Nordihan
JavaScript Engineer (REACT / NODE.JS)

Как запускать docker сервисы чтобы права на volumes принадлежали пользователю — хосту?

В этом https://strapi.io/documentation/developer-docs/lat... туториале используется docker-compose для поднятия двух сервисов: MySQL и Strapi.

Проблема в том, что даже если создать папки app и data перед запуском docker-compose up, то внутри права на файлы и папки перезапишутся.
Папка app станет принадлежать пользователю root.
Папка data - 999, причём у самой папки data поменяется и Owner.

Соответственно, вопрос: как правильно и без костылей сделать так, чтобы всё в папке докер сервиса принадлежало текущему пользователю хоста, т.е. тому кто запускает команду? Это нужно чтобы можно было редактировать файлы на диске со своего пользователя не заходя в контейнер. Сейчас я не могу отредактировать файлы.
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 1
В самом Dockerfile у них прописан явно юзер:
RUN mkdir /srv/app && chown 1000:1000 -R /srv/app

Скопируйте себе этот Dockerfile и измените в нём 1000 на uid текущего пользователя хоста. Укажите этот изменённый Dockerfile в docker-compose.yml:
services:
  strapi:
    build:
      context: .
      dockerfile: Dockerfile-edited
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы