GOOGLE ADS

Samstag, 23. April 2022

Das Volume kann nicht im Docker-Container bereitgestellt werden, wenn der Verzeichnisname einen Doppelpunkt enthält

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

Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...