
É possível com o Docker 1.8+ especificar diferentes drivers de volume para diferentes volumes em um contêiner?
Então posso usar com um volume o driver padrão para armazenamento local e outro diferente com NFS ou algo assim?
Exceto montar o sistema host com uma pasta NFS.
Responder1
Isso é impossível, apenas um driver é usado para o contêiner conforme descrito na página de manual do docker 1.11
--volume-driver=""
Container's volume driver. This driver creates volumes specified either from
a Dockerfile's VOLUME instruction or from the docker run -v flag.
See docker-volume-create(1) for full details.
Responder2
Começando comDocker 17.05.0-ce, você pode usar a --mount
opção com docker run
, o que facilita o uso de diferentes drivers de volume. Por exemplo:
docker run -ti \
--mount volume-driver=convoy,src=volume-name1,target=/mnt/vol1 \
--mount volume-driver=local,src=volume-name2,target=/mnt/vol2 \
ubuntu bash
Responder3
Parece não ser possível, mas existe um truque para fazê-lo funcionar com uma linha de comando (da mesma postagem de membro do Docker) :
docker run -d \
-v $(docker volume create --driver=flocker --name=volumename):/data \
-v $(docker volume create --driver=foobar --name=something):/somewhere \
myimage