-1
這裏不可複製的是我Dockerfile的相關部分:碼頭工人:對目錄的權限時,文件被複制到卷
RUN cd /path/to/future/volume \
&& if [ ! -d "init_data" ]; then tar xvzf init_data.tar.gz; fi \
&& chmod 775 init_data
在我的搬運工,撰寫,我使用了一個名爲卷映射/路徑/ to/future/volume(my-volume:/ path/to/future/volume),因此Docker應該將/ path/to/future/volume中的所有文件複製到我的主機目錄。
複製本身的作品(和所有用戶和組的所有權似乎很好)除了我的chmod 775 init_data沒有應用。
如果創建卷後,我進入容器並啓用「chmod 775 init_data」,它在容器和卷中工作,但我需要在構建時設置此寫入權限。
爲什麼會發生這種情況,我該如何解決這個問題?
在第一次創建卷之後,您是否將chmod添加到了Dockerfile中? – BMitch
好吧,我試圖在「docker-compose up -d」之前刪除音量,並將正確的權限應用於音量內的init_data,所以它都很好。當您使用現有命名卷運行容器時(當卷已經存在時可能根本沒有任何副本),我不確定是否有確切的複製/覆蓋/合併規則? – Tristan
這只是正確的,在卷內存在數據之後沒有卷。如果音量完全沒有,我相信它也會初始化,但如果音量不存在的話。 – BMitch