将文件夹复制到Docker容器中的已装入卷中

时间:2017-04-13 19:45:15

标签: docker containers volumes

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

1 个答案:

答案 0 :(得分:0)

我会在入口点执行此操作,因为Oliver建议,但您可以使用符号链接到容器内的文件夹而不是副本:

示例entrypoint.sh:

 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "required",
    "message": "Required",
    "locationType": "parameter",
    "location": "resource.longUrl"
   }

  ],
  "code": 400,
  "message": "Required"
 }

Dockerfile包括:

#!/bin/sh

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