1

我有一个 Dockerfile 用于生成vendor/文件夹的图像/home/ics199/vendor/。我想将此文件夹复制到/var/www/html. 问题是我还/var/www/html用作与主机一起安装的卷。如果我将vendor/文件夹复制到/var/www/html,则在安装卷时它会被隐藏并且无法使用。所以,它需要在挂载后被复制。我希望将其复制到容器中以保留文件权限(而不是容器-> 主机-> 容器),尽管我知道作为副作用,它会出现在主机的挂载卷中。最好的方法是什么(最好是自动)?

4

1 回答 1

0

正如 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
于 2017-04-14T01:20:21.747 回答