Wenn Sie Rancher verwenden, ist es am einfachsten, einen benutzerdefinierten Rancher-Katalog zu registrieren und für jeden Stack / Service, den Sie bereitstellen möchten, ein Element zu erstellen.
Rancher Catalog ist ein Git-Repository mit der folgenden Struktur
Dann können Sie in Jenkins einen Job erstellen, der die Rancher-REST-API aufruft, um den Stack / Service bereitzustellen / zu aktualisieren.
Im Gegenzug ruft Rancher die neueste Version des Docker-Images für diesen Dienst ab und stellt sie entsprechend der Docker-Compose-Datei aus dem Katalog bereit.
Vorteile:
- allgemeiner Ansatz, der für fast jede App verwendet werden kann
- Jenkins selbst wird möglicherweise in der Rancher-Umgebung bereitgestellt, Agenten werden möglicherweise im Kubernetes-Cluster erstellt
Nachteile:
- Das Entwicklungsteam sollte eine solide Release-Strategie verfolgen, um generische Builds verwenden zu können
- Speichertreiber sind in der Alpha-Version von Rancher 2.0 immer noch in Frage