wie rsync von einem docker-container auf meinen host Rechner
Meine aktuelle Entwicklungsumgebung ermöglicht die automatische code-nachladen, wenn das ändern einer Datei (ich.e nodemon
/webpack
). Aber ich bin einrichten eines kubernetes
( minikube
) - Umgebung, so dass ich schnell öffnen 3-4 Verwandte Dienste auf einmal.
Alles ist in Ordnung, aber es ist derzeit nicht tun, die automatische code neu laden. Ich habe versucht das volume bereitstellen, aber es gibt einige Konflikte mit der Art und Weise docker
und virtualbox
- Dateien verarbeitet, so dass der Konflikt führt zu die änderungen einer Datei vom host spiegelt sich nicht in den docker-container. (Das ist nicht der erste link, den ich habe, scheint mit diesem problem, es ist nur der erste, den ich gefunden beim googeln, es an einem anderen Tag)...
Wie auch immer, lange Geschichte kurz, ppl Schwierigkeiten haben, live reload getan in der Entwicklung. Ich habe das problem gefunden literred ganzen interweb mit sehr wenigen Lösungen. Die beste Lösung würde ich sagen, dass ich bisher gefunden ist Diese person verwendet Teer aus der host zum sync-Ordner.
Jedoch möchte ich eine Lösung aus dem Behälter. Der Grund ist, dass ich das Skript ausgeführt werden soll aus dem container, so dass die Entwickler nicht haben ausführen, script auf seinem host-computer jedes mal, wenn er beginnt die Entwicklung in einem bestimmten repo.
Um dies zu tun, aber ich muss rsync aus dem container an den host-Maschine. Und ich habe überraschend viel Mühe, herauszufinden, wie man die syntax für die.
Let ' s pretend my app existiert in meinem container und host bzw als:
/workspace/app # location in container
/Users/terence/workspace/app # location in host computer
Wie kann ich rsync aus dem container an den host? Ich habe versucht, mit der 172.17.0.17
und 127.0.0.1
ohne Erfolg. Nicht ganz sicher, ob es eine Möglichkeit gibt, es zu tun?
Beispiele, die ich ausprobiert:
rsync -av 172.17.0.17:Users/terence/workspace/app /workspace/app
rsync -av 127.0.0.1:Users/terence/workspace/app /workspace/app
InformationsquelleAutor Terence Chow | 2017-03-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie das rsync vom host (nicht im container), die Sie nutzen könnten
docker cp
statt:z.B.
docker cp containerName:/workspace/app Users/terence/workspace/app
Könnte man klären:
1. sind Sie mit der rsync vom host oder von innen aus dem container?
Wenn es aus dem inneren der container werde es hängt viel von den
--network
den Behälter angeschlossen ist (d.h., bridged oder host) und auch die volumes (d.h., wenn Sie begann, die container hast du mit-v flag?)Update: Für rsync zu arbeiten, innerhalb der Behälter, den Sie benötigen, setzen Sie den host ' s dir auf den container.
Denken Sie jetzt an eine Lösung, beachten Sie dies: host dir als Daten-Volumen
InformationsquelleAutor mfridman