2015-10-30 6 views
7

Ich ziehe das offizielle Jenkins Docker Bild von here. Von Jenkins UI Ich erstelle einen neuen Job, installiere das Github-Plugin und setze die Repo-URLs in die Jobkonfiguration.Commit zu Jenkins Docker Bild speichert keine Änderungen

Endlich speichere ich die Änderungen von Jenkins.

Ich möchte ein neues Bild erstellen, wie es ist. Ich halte den Container an und übertrage ihn einem neuen Image.

Dann starte ich einen neuen Container aus dem neuen Image ... und Jenkins enthält keine meiner Änderungen.

Ich benutze Docker version 1.6.2, build 7c8fca2

Antwort

7

Die Dockerfile erklärt die jenkins Home-Verzeichnis als volume

# Jenkins home directoy is a volume, so configuration and build history 
# can be persisted and survive image upgrades 
VOLUME /var/jenkins_home 

Dies bedeutet, dass alle Änderungen an der Konfiguration Jenkins außerhalb des Docker Bild gemacht.

aktualisieren

Das Projekt README beschreibt, wie Sie Ihre eigenen Derivat Docker Bilder mit Plugins vorinstalliert erstellen.

Zum Beispiel

FROM jenkins 
COPY plugins.txt /usr/share/jenkins/plugins.txt 
RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt 
+0

Right ... so muss ich mein eigenes Bild erstellen basierend auf dem offiziellen ein. Danke –

+0

Ich frage mich ... wenn ich die VOLUME-Direktive aus der offiziellen Jenkins-Docker-Datei entfernt und meine Änderungen in einem neuen Container vorgenommen habe, dann könnte ich es als neues Image festlegen, das die Änderungen enthalten würde ... richtig? –

+1

Bestätigt.Ich habe es so gemacht und jetzt habe ich ein Jenkins-Bild, das standardmäßig einen benutzerdefinierten Job und das Github-Plugin enthält. –

Verwandte Themen