Ich möchte eine Dateifreigabe in einem Windows-Container mounten. Ich habe versucht, eine Azure File-Speicherfreigabe zu mounten, und anfänglich funktioniert es einwandfrei. Ich kann die Dateien im Verzeichnis durchsuchen.Docker für Windows - Dateifreigaben
Wenn ich jedoch die Container-Powershell-Sitzung abbreche und wiederverbinde, wird die Freigabe als "Nicht verfügbar" markiert. Außerdem ist die Freigabe nicht für die ausführbare Datei verfügbar, die als mein ENTRYPOINT ausgeführt wird.
Ich habe auch versucht, das Netzwerklaufwerk auf dem Host, und montieren Sie es in den Container. Aber Docker-compose versagt es zu bringen (Access-Problem?):
Cannot create container for service configserver-c: invalid bind mount spec "z:\\Certificates:c:\\Certificates:rw": invalid volume specification: 'z:\Certificates:c:\Certificates:rw': invalid mount config for type "bind": bind source path does not exist
Gibt es andere Optionen eine externe Dateifreigabe persistent montieren? (Ich kenne keine für Windows verfügbaren Docker Volume-Treiber.)
Weitere Informationen: Ich verwende Docker für Windows unter Windows 10 mit Hyper-V-Isolierung.
Docker Version:
Client:
Version: 17.03.1-ce
API version: 1.27
Go version: go1.7.5
Git commit: c6d412e
Built: Tue Mar 28 00:40:02 2017
OS/Arch: windows/amd64
Server:
Version: 17.03.1-ce
API version: 1.27 (minimum version 1.24)
Go version: go1.7.5
Git commit: c6d412e
Built: Tue Mar 28 00:40:02 2017
OS/Arch: windows/amd64
Experimental: true
Freigaben existieren nur in Benutzersitzung, die Sie erstellt haben, andere Benutzer oder andere Sitzung werden es nicht sehen. Es funktioniert genauso auf Ihrem Desktop. Versuchen Sie, stattdessen $ Session-Objekt zu verwenden. PS C: \> $ session = Neue-PSSession -ContainerId (get-Container ed) .ID -RunAsAdministrator PS C: \> Invoke-Command -Session $ session -Command : mytest = "test"} PS C: \> Aufruf-Befehl -Session $ Sitzung -Kommando {Schreibe-Ausgabe $ env: meintest} test' –
@GSA Danke für Ihre Eingabe. Ich denke, ich werde versuchen, CMDKEY zu verwenden, um dem Benutzer Anmeldeinformationen hinzuzufügen, und stattdessen UNC-Pfade verwenden. Wird das Ergebnis veröffentlichen. –
Was haben Sie mit Containern zu tun, und müssen Benutzer sich am Container auf der Konsole anmelden? –