
Ist es mit Docker 1.8+ möglich, unterschiedliche Volume-Treiber für unterschiedliche Volumes in einem Container anzugeben?
Kann ich also bei einem Volume den Standardtreiber für die lokale Speicherung und einen anderen für NFS oder so verwenden?
Außer dem Mounten des Hostsystems mit einem NFS-Ordner.
Antwort1
Dies ist unmöglich, da für den Container nur ein Treiber verwendet wird, wie in der Manpage von Docker 1.11 beschrieben.
--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.
und von einemDocker-Mitgliedszitat aus Dockers GitHub
Antwort2
Beginnen mitDocker 17.05.0-cekönnen Sie die --mount
Option mit verwenden docker run
, was die Verwendung verschiedener Lautstärketreiber erleichtert. Beispiel:
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
Antwort3
Scheint tatsächlich nicht möglich zu sein, aber es gibt einen Trick, um es mit einer Befehlszeile zum Laufen zu bringen (aus demselben Docker-Member-Beitrag) :
docker run -d \
-v $(docker volume create --driver=flocker --name=volumename):/data \
-v $(docker volume create --driver=foobar --name=something):/somewhere \
myimage