Docker Services versionieren: Unterschied zwischen den Versionen
Saya (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung Markierung: Zurückgesetzt |
Saya (Diskussion | Beiträge) Änderung 235 von Saya (Diskussion) rückgängig gemacht. Markierung: Rückgängigmachung |
||
| Zeile 1: | Zeile 1: | ||
Diese Anleitung beschreibt den Workflow, um Konfigurationsdateien von Docker-Services sicher in einem Git-Repository (z. B. [[Gitea]]) zu versionieren. | |||
== | == 1. Ignorierte Dateien prüfen == | ||
Bevor Dateien hinzugefügt werden, muss sichergestellt werden, dass die `.gitignore` den Upload nicht blockiert. | |||
==== Wechsel in das Verzeichnis des Services ==== | |||
<pre class="dynamic-code"> | |||
cd ~/docker/{{folder}} | |||
</pre> | |||
==== Prüfung der Ignorier-Regeln ==== | |||
<pre class="static-code"> | |||
cat .gitignore | |||
</pre> | |||
'''Häufige Blocker in der .gitignore:''' | |||
* `config/` (ignoriert den gesamten Ordner) | |||
* `*.yaml` oder `*.yml` (ignoriert alle Konfigurationsdateien) | |||
> '''Hinweis:''' Falls eine Datei ignoriert wird, die du dennoch sichern willst, musst du die `.gitignore` anpassen oder den Befehl `git add -f` (force) nutzen. | |||
== | == 2. Dateien und Ordner zum Repository hinzufügen == | ||
Wähle die passende Methode, um deine Konfigurationen für den Commit vorzubereiten. | |||
=== | === Variante A: Einzelne Dateien oder Ordner === | ||
Ideal für gezieltes Hinzufügen von Konfigurationsdateien. | |||
== | ==== Einzelne Datei hinzufügen ==== | ||
<pre class="dynamic-code"> | |||
git add {{pfadZurDatei}}/{{Datei}} | |||
</pre> | |||
==== Liste hinzufügen ==== | |||
<pre class="dynamic-code"> | |||
git add {{pfadZurDatei}}/{{Datei}} {{pfadZurDatei}}/{{Datei2}} | |||
</pre> | |||
==== Ganzen Ordner rekursiv hinzufügen ==== | |||
<pre class="dynamic-code"> | |||
git add {{Ordner}} | |||
</pre> | |||
== | === Variante B: Alles im aktuellen Verzeichnis === | ||
Um alle Änderungen im Projektordner gleichzeitig zu erfassen: | |||
<pre class="static-code"> | <pre class="static-code"> | ||
git add . | |||
</pre> | |||
==== | == 3. Status prüfen & Commit erstellen == | ||
<pre class="static-code"> | Vor dem Speichern solltest du immer prüfen, was im "Staging"-Bereich gelandet ist, um keine Passwörter versehentlich hochzuladen. | ||
==== Prüfung der vorgemerkten Änderungen ==== | |||
<pre class="static-code"> | |||
git status | |||
</pre> | |||
==== | ==== Änderungen lokal speichern ==== | ||
<pre class=" | <pre class="dynamic-code"> | ||
git commit -m "{{Update}}" | |||
</pre> | |||
== | == 4. Änderungen zu Gitea übertragen (Push) == | ||
Um die lokalen Commits auf den Server hochzuladen: | |||
<pre class="static-code"> | |||
<pre class="static-code"> | git push | ||
</pre> | |||
==== | == 5. Repository-Informationen & Analyse == | ||
<pre class="static-code"> | Hier findest du nützliche Befehle, um die Verknüpfung zu deinem Gitea-Server zu prüfen. | ||
==== Welches Remote-Repository wird verwendet? ==== | |||
== | <pre class="static-code"> | ||
==== | git remote -v | ||
</pre> | |||
==== Detailinformationen (Tracking, Default-Branch, Push-URL) ==== | |||
<pre class="static-code"> | |||
git remote show origin | |||
</pre> | |||
==== Aktuellen Branch anzeigen ==== | |||
<pre class="static-code"> | |||
git branch | |||
</pre> | |||
==== Nur die Remote-URL aus der Konfiguration auslesen ==== | |||
<pre class="static-code"> | <pre class="static-code"> | ||
git config --get remote.origin.url | |||
</pre> | </pre> | ||
== | == Best Practices für Docker-Services == | ||
== | |||
Um das Repository sauber zu halten, sollten nur relevante Dateien versioniert werden. | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! Versionieren (Ja) !! NICHT versionieren (Nein) | ||
|- | |- | ||
| `docker-compose.yml` | | `docker-compose.yml` || Logs (`*.log`) | ||
|- | |- | ||
| `*.yaml` / `*.yml` Konfigurationen || | | `*.yaml` / `*.yml` Konfigurationen || Datenbank-Verzeichnisse (z.B. `mysql/`, `db/`) | ||
|- | |- | ||
| `.env.example` (Templates) || `.env` mit echten Passwörtern | | `.env.example` (Templates) || `.env` (mit echten Passwörtern/Secrets!) | ||
|- | |- | ||
| Eigene Shell-Scripte (`*.sh`) || | | Eigene Shell-Scripte (`*.sh`) || Cache-Daten & Laufzeitdaten | ||
|- | |- | ||
| Dockerfiles || | | Dockerfiles || Media-Dateien, Bilder, Backups | ||
|} | |} | ||
'''Tipp zur Einbauposition (Mounting Position):''' | |||
Wenn du Volumes in deiner `docker-compose.yml` verschiebst oder Pfade änderst, stelle sicher, dass die neuen Pfade auch von Git erfasst werden. Nutze dazu oben einfach die Variable `{{folder}}`, um die Befehle schnell für andere Container anzupassen. | |||
Version vom 17. Februar 2026, 21:21 Uhr
Diese Anleitung beschreibt den Workflow, um Konfigurationsdateien von Docker-Services sicher in einem Git-Repository (z. B. Gitea) zu versionieren.
1. Ignorierte Dateien prüfen
Bevor Dateien hinzugefügt werden, muss sichergestellt werden, dass die `.gitignore` den Upload nicht blockiert.
Wechsel in das Verzeichnis des Services
cd ~/docker/{{folder}}
Prüfung der Ignorier-Regeln
cat .gitignore
Häufige Blocker in der .gitignore:
- `config/` (ignoriert den gesamten Ordner)
- `*.yaml` oder `*.yml` (ignoriert alle Konfigurationsdateien)
> Hinweis: Falls eine Datei ignoriert wird, die du dennoch sichern willst, musst du die `.gitignore` anpassen oder den Befehl `git add -f` (force) nutzen.
2. Dateien und Ordner zum Repository hinzufügen
Wähle die passende Methode, um deine Konfigurationen für den Commit vorzubereiten.
Variante A: Einzelne Dateien oder Ordner
Ideal für gezieltes Hinzufügen von Konfigurationsdateien.
Einzelne Datei hinzufügen
git add {{pfadZurDatei}}/{{Datei}}
Liste hinzufügen
git add {{pfadZurDatei}}/{{Datei}} {{pfadZurDatei}}/{{Datei2}}
Ganzen Ordner rekursiv hinzufügen
git add {{Ordner}}
Variante B: Alles im aktuellen Verzeichnis
Um alle Änderungen im Projektordner gleichzeitig zu erfassen:
git add .
3. Status prüfen & Commit erstellen
Vor dem Speichern solltest du immer prüfen, was im "Staging"-Bereich gelandet ist, um keine Passwörter versehentlich hochzuladen.
Prüfung der vorgemerkten Änderungen
git status
Änderungen lokal speichern
git commit -m "{{Update}}"
4. Änderungen zu Gitea übertragen (Push)
Um die lokalen Commits auf den Server hochzuladen:
git push
5. Repository-Informationen & Analyse
Hier findest du nützliche Befehle, um die Verknüpfung zu deinem Gitea-Server zu prüfen.
Welches Remote-Repository wird verwendet?
git remote -v
Detailinformationen (Tracking, Default-Branch, Push-URL)
git remote show origin
Aktuellen Branch anzeigen
git branch
Nur die Remote-URL aus der Konfiguration auslesen
git config --get remote.origin.url
Best Practices für Docker-Services
Um das Repository sauber zu halten, sollten nur relevante Dateien versioniert werden.
| Versionieren (Ja) | NICHT versionieren (Nein) |
|---|---|
| `docker-compose.yml` | Logs (`*.log`) |
| `*.yaml` / `*.yml` Konfigurationen | Datenbank-Verzeichnisse (z.B. `mysql/`, `db/`) |
| `.env.example` (Templates) | `.env` (mit echten Passwörtern/Secrets!) |
| Eigene Shell-Scripte (`*.sh`) | Cache-Daten & Laufzeitdaten |
| Dockerfiles | Media-Dateien, Bilder, Backups |
Tipp zur Einbauposition (Mounting Position): Wenn du Volumes in deiner `docker-compose.yml` verschiebst oder Pfade änderst, stelle sicher, dass die neuen Pfade auch von Git erfasst werden. Nutze dazu oben einfach die Variable `Vorlage:Folder`, um die Befehle schnell für andere Container anzupassen.