如何映射泊坞窗卷中的文件
在docker-compose文件中我有一个特殊的用例。 下面是这个文件的摘录,应该足以certificate这个问题。
version: '2' volumes: data: #external: true driver: rancher-nfs services: harbor-setupwrapper: image: mreferre/harbor-setupwrapper:1.1.1-1 container_name: harbor-setupwrapper volumes: - data:/data command: ["/harbor/harbor-setupwrapper.sh"] network_mode: "none" ui: image: vmware/harbor-ui:v1.1.1 container_name: harbor-ui restart: always volumes: - data:/harbor_storage - /data/secretkey:/etc/ui/key:z depends_on: - harbor-setupwrapper entrypoint: - /bin/sh - -c command: - /configui/entrypointui.sh
基本上我的用例如下:我创build一个docker卷( data
),我安装在一个安装容器(我正在使用一个普通的NFS驱动程序)。 该设置容器在卷内部生成一堆configuration文件。
然后我需要将整个卷映射到另一个容器中:
- data:/harbor_storage
这工作得很好,在ui
容器中,我可以看到container /harbor_storage
目录内的data
卷的内容。
不过,我也需要映射ui
容器内特定目录内的data
卷中的特定文件:
-/data/secretkey:/etc/ui/key:z
这不起作用,因为它基本上将主机本地的/data/secretkey
目录映射到容器内的/etc/ui/key:z
目录。
实际上, secretkey
是data
卷中的一个文件(这是我想要映射到文件/etc/ui/key:z
。
我也尝试了在语法上的调整,看看我能否说,我指的是data
量,但撰写有关语法错误的抱怨。 这是我试过的(没有运气):
- data/secretkey:/etc/ui/key:z
任何思想赞赏。
PS我知道我可以调用一个小脚本,将/harbor_storage/secretkey
到/etc/ui/key
但是我仍然希望不必像这样做,就可以像映射一样映射它。
目前不可能安装卷的子目录。 您必须从该卷中提取该密钥并将其挂载,或者复制或符号链接。