Ich kann ein Volume nicht in einem Docker-Container mounten, wenn der Verzeichnisname einen Doppelpunkt (:) enthält
Der Name des Verzeichnisses ist 2012-08-05-00:16:37 und ich bevorzuge es, das Verzeichnis nicht umzubenennen. Ich habe es versucht:
docker run -it --name test1 \
-v /host_system_path/2012-08-05-00\:16\:37/:/container_path/2012-08-05-00\:16\:37/
image_name
Ich bekomme den Fehler:
docker: Error response from daemon: invalid bind mount spec.See
'docker run --help'.
Benenne ich das Verzeichnis ohne Leerzeichen oder nur mit Bindestrichen um, dann wird das Verzeichnis ohne Probleme in den Container gemountet. Kann jemand darauf hinweisen, wie ich das Problem lösen kann, wenn das Verzeichnis einen Doppelpunkt enthält.
Ich bin auf Ubuntu: 16.04 und Docker-Version 17.06.0-ce.
Lösung des Problems
Doppelpunkte werden derzeit nicht unterstützt, wenn Verzeichniszuordnungen über angegeben werden -v
, und es scheint, dass Sie sie auch nicht maskieren können.
Sie müssen --mount
stattdessen nutzen:
docker run... --mount type=bind,source=/some:colon:file,destination=/container-path...
Im schlimmsten Fall können Sie diese Einschränkung natürlich auch noch mit einer temporären Systemverknüpfung ( ln -s
) umgehen oder das Zielverzeichnis temporär umbenennen.
Keine Kommentare:
Kommentar veröffentlichen