2017-07-08 5 views
2

funktioniert, wenn ich Volumen wie -v/dir passieren:/du sich funktioniert wie es sollteDockerfile VOLUME arbeitet nicht während -v

Aber wenn ich VOLUME in meinem dockerfile verwenden wird es leer

Mein Dockerfile mountend sieht wie folgt aus docker, die im Inneren des Behälters muss erzählt nur

FROM ubuntu:16.04           

RUN apt-get update           
RUN apt-get install nano         
ENV Editor="/usr/bin/nano"         

ARG UID=1000            
RUN useradd -u "$UID" -G root writer      
RUN mkdir -p "/home/writer" && chown -R "$UID":1000 "/home/writer" 

RUN mkdir -p "/home/stepik"         
RUN chown -R "$UID":1000 "/home/stepik"       
VOLUME ["/home/stepik"] 

USER writer 

WORKDIR /home/stepik         
ENTRYPOINT ["bash"] 

Antwort

4

die Lautstärke auf dem Dockerfile Definition existieren das Volumen, nicht wo aus die Lautstärke erhalten. Es ist das gleiche wie die Option -v /dir anstelle von -v /dir:/dir zu übergeben. Das Ergebnis ist ein "anonymer" Band mit einer Guid, die Sie in docker volume ls sehen können. Sie können die Option in der Docker-Datei nicht übergeben, um zu ermitteln, wo das Volume bereitgestellt werden soll. Bilder, die Sie aus dem Docker-Hub ziehen, können kein beliebiges Verzeichnis von Ihrem Host bereitstellen und den Inhalt dieses Verzeichnisses an einen Black Hat-Computer senden Internet von Design.

Beachten Sie, dass ich nicht empfehle, Datenträger innerhalb der Dockerfile zu definieren. Weitere Informationen finden Sie unter my blog post on the topic.

Verwandte Themen