Как сохранить разрешения linux / mac на bind mount с докером для windows? - PullRequest
0 голосов
/ 11 октября 2018

В настоящее время я разрабатываю приложение Drupal на моем Mac.Drupal нуждается в настройке некоторых разрешений в своих подпапках (в linux), и все они уже настроены.У меня есть два контейнера: база данных (дБ) и apache-php (веб).Весь мой код находится в git, и я могу получить его с помощью git clone или pull ...

Просто представляя проблему, не беспокойтесь о drupal или php, так как эта проблема может возникнуть с Python или любым другим языком сценариев..

Я использую bind mount с --volume непосредственно из кода из git, вот так (docker-compose.yml):

version: "2" 
services:   
  web:
    image: yoshz/apache-php:5.5
    links:
      - db:database
    volumes:
     - ./docker/phpconf/apache2:/etc/php5/apache2
     - ./www:/var/www
     - ./docker/sites-avaliable/:/etc/apache2/sites-available/
    ports:
      - "8600:80"   
  db:
    extends:
      file: docker-common-configs.yaml
      service: db
    environment:
      MYSQL_ROOT_PASSWORD: 1234
      MYSQL_DATABASE: drupal
      MYSQL_USER: user
      MYSQL_PASSWORD: password

Коллега клонировал мой репозиторий в Windows.Запустите docker-compose up -d, и приложение завершится ошибкой.

Проблема заключается в том, что том находится на хосте windows , разрешения в ./www не установлены .

Мне бы хотелось, чтобы код был доступен для приложения Windows Host Visual Code, чтобы он мог быстро изменяться без развертывания.

Решение силовых разрешений следующим образом:

     - ./www:/var/www:rw

не будет работать, потому что у каждого подкаталога есть собственные разрешения.

Есть ли у кого-нибудь творческое решение для лицаэто проблема?

...