簡體   English   中英

將文件夾復制到Docker容器內的已安裝卷中

[英]Copy a folder into a mounted volume within a Docker Container

我有一個用於生成映像的Dockerfile,該映像在/home/ics199/vendor/中生成了一個vendor/文件夾。 我想將此文件夾復制到/var/www/html 問題是我還將/var/www/html用作與主機一起裝入的卷。 如果我將vendor/文件夾復制到/var/www/html ,則在裝入該卷且無法使用該卷時它將隱藏。 因此,需要在掛載后將其復制。 我希望將其復制到容器中以保留文件權限(而不是container-> host-> container),盡管我知道這是一個副作用,它將出現在主機的安裝卷中。 最好的方法是什么(最好是自動進行)?

我會按照Oliver的建議在入口點中執行此操作,但是您可以使用符號鏈接代替容器中的文件夾來代替副本:

示例entrypoint.sh:

#!/bin/sh

ln -sf /home/ics199/vendor /var/www/html/vendor
if [ $# == 0 ]; then
  set -- /bin/sh
fi
exec "$@"

Dockerfile將包括:

COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT /entrypoint.sh

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM