2016-05-03 3 views
-1

Wiederaufbau kurz Ich will meine Docker Container/Image automatisch neu erstellt, wenn ich einen neuen Teil der Funktionen schreiben. Ich habe eine Knoten-App erstellt, die den Server im Docker-Container über Compose ausführt. Der Container funktioniert einwandfrei, aber wenn ich die Dateien oder das Verzeichnis ändere, werden die Änderungen nicht automatisch übernommen. Ich muss das Verzeichnis erneut überDocker Container/Bild wird nicht automatisch auf Code-Änderung

neu erstellen, so dass die Änderungen wirksam werden können.

Gibt es eine Lösung, die ich möglicherweise nicht manuell den Container neu erstellen?

Grüße.

+0

Sie müssen es an die Build-Pipelines mit Jenkins, CircleCi, GoCD oder ähnlichem anschließen – Boynux

+0

Haben Sie darüber nachgedacht, einen Datenträger zu verwenden, um den Anwendungscode im Container bereitzustellen? – pdoherty926

+0

Danke Boynux, und pdoherty926: - Ja, ich bin für das Volumen-Konzept. Ich habe es sogar ausprobiert, ich habe nur eine Frage, dass das Schreiben von Volume-Direktive in meiner docker-compose.yml-Datei ein Volume erstellen würde ?? Oder muss ich zuerst ein Volume manuell erstellen und dann würde es in der Datei verweisen? –

Antwort

0

Entweder möchten Sie sich eine Art Pipeline für Lieferpipeline ansehen, wie Boynux es vorgeschlagen hat, btw Dockerhub kann github für Checkins beobachten und automatische Image-Builds auslösen.

Oder Sie können den Code mit einem Volumen in den Container einhängen, so dass Änderungen übernommen werden.

Die von Ihnen gewählte Option hängt von Ihrer Philosophie/Lieferpipeline ab.

+0

Hallo JHarris: Danke Ja, ich bin für das Volumen-Konzept. Ich habe es sogar ausprobiert, ich habe nur eine Frage, dass das Schreiben von Volume-Direktive in meiner docker-compose.yml-Datei ein Volume erstellen würde ?? Oder muss ich zuerst ein Volume manuell erstellen und dann würde es in der Datei verweisen? –

+0

Sie können Volumes direkt in einer Docker-Compose-Datei erstellen, siehe hier: https://docs.docker.com/compose/compose-file/#volume-configuration-reference – johnharris85

+0

Hallo JHarris: Ich habe dafür gearbeitet, aber Ich konnte den issure bis jetzt nicht lösen, hier ist meine docker-compose.yml Datei 'www: containername: app_www_1 build:. Bände: -/var/lib/Docker/volumes/app_ww -/opt/apnosrest:/var/lib/Docker/volumes/app_ww - ./cache:/tmp/cache Ports: - „80: 3000 " expose: -" 80 "' Ich bekomme nicht meine erforderliche Arbeit erledigt. d. h. automatisches Rendering der im Code vorgenommenen Änderung. hier ist die Liste der Volumes im System angelegt: '$ Docker Volumen ls DRIVER Volume-Name lokalen app_ww' –