如何映射泊坞窗卷中的文件

在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目录。

实际上, secretkeydata卷中的一个文件(这是我想要映射到文件/etc/ui/key:z

我也尝试了在语法上的调整,看看我能否说,我指的是data量,但撰写有关语法错误的抱怨。 这是我试过的(没有运气):

- data/secretkey:/etc/ui/key:z

任何思想赞赏。

PS我知道我可以调用一个小脚本,将/harbor_storage/secretkey/etc/ui/key但是我仍然希望不必像这样做,就可以像映射一样映射它。

目前不可能安装卷的子目录。 您必须从该卷中提取该密钥并将其挂载,或者复制或符号链接。