2015-06-02 6 views
5

Ich mache Server-Seite Entwicklung und mein Arbeitsbereich befindet sich in D: Weil ich bin kein Fan von Speichern von Daten auf C: aber kann einfach keinen Weg zu D: \ Workspace zu/home/workspaceWie ordne ich Datenträger außerhalb von C: Benutzer Container unter Windows zu?

zuordnen

ich habe versucht, eine symblink von C zu erstellen: \ Users \ Benutzername D: \ Workspace von:

  1. Karte C: \ Benutzer \ Benutzername \ Arbeitsbereich/home/Arbeitsplatz
  2. Stop-Container
  3. Umbenennen C: \ Benutzer \ Benutzername \ Arbeitsbereich
  4. Erstellen Sie Symlink namens Workspace zu D : \ Workspace
  5. starten Container

Zuerst Docker während der Sitzung fein gearbeitet, bis ich Boot2Docker neu starten, dann den Container starten ich bekommen würde „C: \ Benutzer \ Benutzername \ Workspace-Datei vorhanden ist“.

Ich denke, das ist ein Docker Problem, aber ich möchte sowieso außerhalb C: \ Benutzer zuordnen.

Antwort

5
  • Teilen Arbeitsbereich zwischen Host und Boot2Docker virtuellen Maschine $ boot2docker down $ cd "C:\Program Files\Oracle\VirtualBox" $ VBoxManage sharedfolder add boot2docker-vm --name mydata --hostpath "D:\Workspace" $ boot2docker up

  • Berg freigegebenen Ordner $ boot2docker ssh 'sudo mkdir -p /data' $ boot2docker ssh 'sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw" mydata /data'

  • erstellen Nur-Daten-Container. Docker-Best Practices alwaysrecommends Sie verwenden nur Datencontainer. Sie können bereits vorhandene Daten nur für Behälter wiederverwendet werden: $ docker run --volume /data:/data --name mydata dylanlindgren/docker-laravel-data

  • Wenn Sie diese Änderung soll dauerhaft sein, dem letzten Befehl in Startkonfigurationsdatei hinzufügen müssen /var/lib/boot2docker/bootlocal.sh sleep 10 && sudo mount -t vboxsf -o "defaults,uid=33,gid=33,rw" mydata /data docker start mydata

Dann werden Sie Ihren Arbeitsbereich in/data montiert haben

Sie können weitere Dokumentation über VirtualBox Guest Additions in Boot2Docker here finden.

+0

habe ich diesen Fehler : mount.vboxsf: Die Montage ist mit dem Fehler fehlgeschlagen: Protokollfehler mount: mydata an/daten installieren fehlgeschlagen: Protokollfehler – deathemperor

+1

Ich füge einen ersten Schritt zum Erstellen eines reinen Datencontainers hinzu. Ich habe diesen Schritt in der vorherigen Antwort weggelassen. – dmoreno

+0

Vermeiden Sie "Protokollfehler" und wiederholen Sie den VBoxManage-Befehl. Stellen Sie sicher, dass dieser Befehl ohne Fehler ausgeführt wird. – dmoreno

4

Aktualisierte Antwort für jetzt, da boot2docker veraltet ist. Das gleiche wird jetzt mit Docker-Maschine erreicht.

Die Antwort ist hier beschrieben: https://github.com/docker/machine/issues/1814

Grundsätzlich nachdem die freigegebenen Ordner in der Virtual Box UI Montage benötigen Sie die folgenden Befehle in einer Eingabeaufforderung auszuführen:

# Note the extra/at the beginning of the path because of msys/MinGW. 
docker-machine.exe ssh default 'sudo mkdir --parents //e/Documents/workspace' 
docker-machine.exe ssh default 'sudo mount -t vboxsf e/Documents/workspace //e/Documents/workspace' 
+0

Unter StackOverflow-Regeln sollten Sie nicht nur die Schritte zum Abschließen der Aufgabe bereitstellen, sondern auch jede Zeile erläutern und erklären, warum Sie sie dazu auffordern. Schlechte Antwort, 5/10 –