Falsche Berechtigungen im Volume im Docker-Container

Ich führe Docker 1.8.1 in OSX 10.11 über eine lokale Docker-VM aus.

Ich habe die folgende docker-compose.yml:

web:
    build: docker/web
    ports:
        - 80:80
        - 8080:8080
    volumes:
        - $PWD/cms:/srv/cms

Meine Dockerfile sieht so aus:

FROM alpine

# install nginx and php
RUN apk add --update \
    nginx \
    php \
    php-fpm \
    php-pdo \
    php-json \
    php-openssl \
    php-mysql \
    php-pdo_mysql \
    php-mcrypt \
    php-ctype \
    php-zlib \
    supervisor \
    wget \
    curl \
    && rm -rf /var/cache/apk/*

RUN mkdir -p /etc/nginx && \
    mkdir -p /etc/nginx/sites-enabled && \
    mkdir -p /var/run/php-fpm && \
    mkdir -p /var/log/supervisor && \
    mkdir -p /srv/cms

RUN rm /etc/nginx/nginx.conf
ADD nginx.conf /etc/nginx/nginx.conf
ADD thunder.conf /etc/nginx/sites-enabled/thunder.conf

ADD nginx-supervisor.ini /etc/supervisor.d/nginx-supervisor.ini

WORKDIR "/srv/cms"
VOLUME "/srv/cms"

EXPOSE 80
EXPOSE 8080
EXPOSE 22

CMD ["/usr/bin/supervisord"]

Wenn ich alles mit @ laufdocker-compose up alles funktioniert gut, meine Volumes sind an der richtigen Stelle gemountet.

Aber die Berechtigungen im gemounteten Ordner / srv / cms sehen falsch aus. Der Benutzer ist "1000" und die Gruppe ist "50" im Container. Der Webserver konnte in diesem Ordner keine Dateien erstellen, da er mit dem Benutzer "root" ausgeführt wird.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage