{"id":80669,"date":"2021-08-30T18:46:27","date_gmt":"2021-08-30T16:46:27","guid":{"rendered":"https:\/\/jfrog.com\/?p=80669"},"modified":"2021-08-30T18:46:58","modified_gmt":"2021-08-30T16:46:58","slug":"power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments","status":"publish","type":"post","link":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/","title":{"rendered":"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments"},"content":{"rendered":"<p><img decoding=\"async\" class=\"alignnone size-full wp-image-59913\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160023\/PowerupHelmCharts-03.png\" alt=\"\" width=\"863\" height=\"301\" srcset=\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160023\/PowerupHelmCharts-03.png?speedsize=w_863 863w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160023\/PowerupHelmCharts-03.png?speedsize=w_300 300w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160023\/PowerupHelmCharts-03.png?speedsize=w_768 768w\" sizes=\"(max-width: 863px) 100vw, 863px\" \/><\/p>\n<p><span style=\"font-weight: 400\">Operations-Teams m\u00fcssen das Deployment von Anwendungen automatisieren, und <\/span><a href=\"https:\/\/jfrog.com\/de\/integration\/helm-repository\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">Helm ist die Industriestandardl\u00f6sung f\u00fcr die Bereitstellung in Kubernetes<\/span><\/a><span style=\"font-weight: 400\">. Wie viele Software-Anbieter bieten auch wir <\/span><a href=\"https:\/\/chartcenter.io\/jfrog\/artifactory\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">Helm-Charts f\u00fcr die Installation von Artifactory<\/span><\/a><span style=\"font-weight: 400\">und anderen JFrog DevOps-Plattformprodukten an, die f\u00fcr die Standard-\/Empfehlungskonfigurationen ausgelegt sind, die die meisten Teams ben\u00f6tigen. Diese Vorlagen bieten dem Kunden einen begrenzten Satz von Konfigurationsoptionen.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Wenn Sie Ihr <\/span><a href=\"https:\/\/jfrog.com\/de\/artifactory\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">Artifactory<\/span><\/a><span style=\"font-weight: 400\">, <\/span><a href=\"https:\/\/jfrog.com\/de\/xray\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">Xray<\/span><\/a><span style=\"font-weight: 400\"> oder andere Deployments auf eigene Art und Weise anpassen m\u00f6chten, k\u00f6nnen Sie das Diagramm abspalten, um Ihre eigene angepasste Version zu erstellen. Allerdings wird Ihre benutzerdefinierte Version jedes Mal, wenn JFrog sein Helm-Chart aktualisiert, nicht mehr synchronisiert und veraltet sein. Um Ihre Version auf dem neuesten Stand zu halten, m\u00fcssten Sie bei jedem Update die Integration erneut durchf\u00fchren.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Wie k\u00f6nnen Sie ein Helm-Chart ohne Abspaltung anpassen? Genau daf\u00fcr hat Google <\/span><a href=\"https:\/\/kustomize.io\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">Kustomize<\/span><\/a><span style=\"font-weight: 400\"> geschaffen. In diesem Beitrag \u2013 und auch in einem <\/span><a href=\"https:\/\/leap.jfrog.com\/WN-2020-07-Power-up-Artifactory-with-Kustomize-and-Helm-US-LP.html\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">kommenden Webinar<\/span><\/a><span style=\"font-weight: 400\"> \u2013 zeigen wir Ihnen, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Deployments durchzuf\u00fchren, w\u00e4hrend Sie immer die neueste Helm-Chart Version Ihres Anbieters verwenden.<\/span><\/p>\n<h2><span style=\"font-weight: 400\">Vorlagen im Vergleich zu Overlays<\/span><\/h2>\n<p><span style=\"font-weight: 400\">Eine <\/span><i><span style=\"font-weight: 400\">Vorlage<\/span><\/i><span style=\"font-weight: 400\"> ist ein Formular, das Platzhalter enth\u00e4lt, die von einem automatisierten Prozess geparst werden, um sie durch Werte zu ersetzen. Sie ist f\u00fcr eine bestimmte Funktion ausgelegt und markiert die Stellen, an denen Sie die Angaben machen m\u00fcssen. Wenn Sie schon einmal &quot;Mad Libs&quot; gespielt haben, wird Ihnen dieses Ausf\u00fcllen von L\u00fcckentext bekannt vorkommen.<\/span><\/p>\n<p><img decoding=\"async\" class=\"alignnone size-large wp-image-59915\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160120\/Kustomize-Template-1024x58.png\" alt=\"\" width=\"1024\" height=\"58\" srcset=\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160120\/Kustomize-Template.png?speedsize=w_1024 1024w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160120\/Kustomize-Template.png?speedsize=w_300 300w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160120\/Kustomize-Template.png?speedsize=w_768 768w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160120\/Kustomize-Template.png?speedsize=w_1297 1297w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p><span style=\"font-weight: 400\">Als Entwickler werden Sie erkennen, dass Vorlagen und Wertangaben wie Makros und ihre Variablen oder Unterprogramme und ihre Parameter sind. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Ein <\/span><i><span style=\"font-weight: 400\">Overlay<\/span><\/i><span style=\"font-weight: 400\"> ist ein Satz von Ersetzungszeichenfolgen. Textbl\u00f6cke in der Originaldatei werden vollst\u00e4ndig durch neue Textbl\u00f6cke ersetzt.<\/span><\/p>\n<p><img decoding=\"async\" class=\"alignnone size-large wp-image-59916\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160206\/Kustomize-Overlay-1024x57.png\" alt=\"\" width=\"1024\" height=\"57\" srcset=\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160206\/Kustomize-Overlay.png?speedsize=w_1024 1024w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160206\/Kustomize-Overlay.png?speedsize=w_300 300w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160206\/Kustomize-Overlay.png?speedsize=w_768 768w, https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01160206\/Kustomize-Overlay.png?speedsize=w_1300 1300w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p><span style=\"font-weight: 400\">Was ist der Unterschied? <\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Eine Vorlage muss sorgf\u00e4ltig vorbereitet werden, um spezifische Informationen an wichtigen Stellen abzufragen. Wenn Sie eine Vorlage verwenden, sind Sie darauf beschr\u00e4nkt, nur die Elemente zu \u00e4ndern, die die Vorlage zur Verf\u00fcgung stellt. <\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">F\u00fcr ein Overlay muss die Originaldatei nicht in irgendeiner Weise vorbereitet werden. Sie k\u00f6nnen jeden Teil komplett austauschen.<\/span><\/li>\n<\/ul>\n<h2><span style=\"font-weight: 400\">HelloWorld Helm-Chart<\/span><\/h2>\n<p><span style=\"font-weight: 400\">Da die Helm-Charts von Artifactory ziemlich komplex sind, lassen Sie uns ein sehr einfaches Beispiel verwenden. Hier l\u00e4sst die Vorlage ein Argument f\u00fcr den Firmennamen zu.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ cat templates\/pod.yaml\r\napiVersion: v1\r\nkind: Pod\r\nmetadata:\r\n  name: helloworld\r\nspec:\r\n  restartPolicy: Never\r\n  containers:\r\n  - name: hello\r\n    image: alpine\r\n    env:\r\n    command: [&quot;\/bin\/sh&quot;,&quot;-c&quot;]\r\n    args: [&quot;\/bin\/echo Hello! My company name is {{ <span style=\"color: #40be46\">.Values.companyName<\/span>}}&quot;]<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Die Werte f\u00fcr die Argumente der Vorlage stehen in der Datei <code>values.yaml<\/code>.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ cat values.yaml\r\ncompanyName: ABC Company<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Lassen Sie uns installieren und sehen, wie es funktioniert.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ Helm install helloworld .\r\nNAME: helloworld\r\nLAST DEPLOYED: Mon May 18 16:53:14 2020\r\nNAMESPACE: default\r\nSTATUS: deployed\r\nREVISION: 1\r\nTEST-SUITE: None\r\n\r\n$ kubectl logs -f helloworld\r\nHello! My company name is ABC Company<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Klasse! Das hat gut funktioniert, und wurde an die Kunden geliefert. Einer der Kunden w\u00fcnscht jedoch, den Namen des Mitarbeiters und den Namen der Abteilung einzuf\u00fcgen, damit das Ergebnis folgt aussieht: <\/span><\/p>\n<p><i><span style=\"font-weight: 400\">My name is John. I work for the Accounting department. Our company name is ABC Company.<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400\">Okay, ganz einfach \u2013 man k\u00f6nnte das Helm-Chart aufspalten und die Helm-Vorlage wie folgt \u00e4ndern:<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">    args: [&quot;\/bin\/echo My name is {{ <span style=\"color: #40be46\">.Values.employeeName<\/span>}}. I work for {{ <span style=\"color: #40be46\">.Values.employeeDepartment<\/span>}}. Our company name is {{<span style=\"color: #40be46\">.Values.companyName<\/span>}}&quot;]<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Dann werden neue Werte in der <code>werte.yaml<\/code> -Datei hinzugef\u00fcgt.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ cat values.yaml\r\nemployeeName: Gary\r\nemployeeDepartment: Marketing\r\ncompanyName: ABC Company<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Aber, wie wir festgestellt haben, ist die Abspaltung jetzt nicht mehr synchron mit dem Original. An dieser Stelle kommt Kustomize zur Hilfe.<\/span><\/p>\n<h2><span style=\"font-weight: 400\">\u00dcberlagern mit Kustomize<\/span><\/h2>\n<p><span style=\"font-weight: 400\">Kustomize erm\u00f6glicht es Ihnen, eigene Anpassungen in yaml-Dateien zu \u00fcberlagern. In unserem Beispiel kann der Kunde Anpassungen entsprechend seiner Bed\u00fcrfnisse vornehmen, ohne eine private, nicht wartungsf\u00e4hige Abspaltung von Charts zu erstellen.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Zun\u00e4chst erstellt der Kunde eine <code>kustomization.yaml<\/code> -Datei.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">patchesJson6902:\r\n- target:\r\n    version: v1\r\n    kind: Pod\r\n    name: helloworld\r\n  patch: |-\r\n    - op: replace\r\n      path: \/spec\/containers\/0\/args\r\n      value: [&quot;\/bin\/echo My name is {{ .Values.employeeName}}. I work for {{ .Values.employeeDepartment}}. Our company name is {{ .Values.companyName}}&quot;]\r\nresources:\r\n- templates\/pod.yaml<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Jetzt k\u00f6nnen wir Kustomize anweisen, unser Overlay anzuwenden.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ mkdir templates_new\r\n$ kustomize build -o templates_new\r\n\r\n$ cat templates_new\/~g_v1_pod_helloworld.yaml\r\napiVersion: v1\r\nkind: Pod\r\nmetadata:\r\n  name: helloworld\r\nspec:\r\n  containers:\r\n<span style=\"color: #40be46\">  - args:\r\n    - \/bin\/echo My name is {{ .Values.employeeName}}. I work for {{ .Values.employeeDepartment}}\r\n      department. Our company name is {{ .Values.companyName}}<\/span>\r\n    command:\r\n    - \/bin\/sh\r\n    - -c\r\n    image: alpine\r\n    name: hello\r\n  restartPolicy: Never<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Wir werden zun\u00e4chst die urspr\u00fcngliche Vorlage durch unsere neue Vorlage ersetzen, sie dann mit Helm installieren und verifizieren.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ mv templates templates_old\r\n\r\n$ mv templates_new\/ templates\r\n\r\n$ Helm delete helloworld\r\nrelease &quot;helloworld&quot; uninstalled\r\n\r\n$ Helm install helloworld .\r\nNAME: helloworld\r\nLAST DEPLOYED: Tue May 19 14:27:18 2020\r\nNAMESPACE: default\r\nSTATUS: deployed\r\nREVISION: 1\r\nTEST-SUITE: None\r\n\r\n$ kubectl logs -f helloworld\r\nMy name is Gary. I work for Marketing department. Our company name is ABC Company <\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Klasse! Dies entspricht der Anforderung unseres Kunden. <\/span><\/p>\n<h2><span style=\"font-weight: 400\">Zuerst die Vorlage, dann das Overlay<\/span><\/h2>\n<p><span style=\"font-weight: 400\">Im vorherigen Beispiel haben wir Kustomize verwendet, um unsere Helm-Vorlage so zu \u00e4ndern, dass sie neue Werte akzeptiert. Dann haben wir diese Version mit <code>helm install<\/code> verwendet, um die App bereitzustellen. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Es gibt jedoch Szenarien, in denen diese Reihenfolge nicht ideal ist. Stattdessen m\u00f6chten Sie vielleicht die Chart-Vorlage zuerst lokal rendern, und <\/span><span style=\"font-weight: 400\">dann<\/span><span style=\"font-weight: 400\"> Ihr Kustomize-Overlay anwenden, wenn Sie die App bereitstellen.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Dies kann am besten funktionieren, wenn Sie dieselbe App in mehreren Umgebungen bereitstellen m\u00fcssen, jedoch mit \u00fcbergreifenden Belangen wie Labels, Sicherheit oder Metering. Zum Beispiel k\u00f6nnten Sie f\u00fcr jede Umgebung unterschiedliche Kombinationen von Anforderungen haben:<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">Umgebung<\/span><\/td>\n<td><span style=\"font-weight: 400\">Labels<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sicherheit<\/span><\/td>\n<td><span style=\"font-weight: 400\">Metering<\/span><\/td>\n<\/tr>\n<tr>\n<td><b>Entwicklung<\/b><\/td>\n<td><span style=\"font-weight: 400\">Ja<\/span><\/td>\n<td><span style=\"font-weight: 400\">Nein<\/span><\/td>\n<td><span style=\"font-weight: 400\">Nein<\/span><\/td>\n<\/tr>\n<tr>\n<td><b>Test<\/b><\/td>\n<td><span style=\"font-weight: 400\">Ja<\/span><\/td>\n<td><span style=\"font-weight: 400\">Nein<\/span><\/td>\n<td><span style=\"font-weight: 400\">Ja<\/span><\/td>\n<\/tr>\n<tr>\n<td><b>Produktion<\/b><\/td>\n<td><span style=\"font-weight: 400\">Ja<\/span><\/td>\n<td><span style=\"font-weight: 400\">Ja<\/span><\/td>\n<td><span style=\"font-weight: 400\">Ja<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Ebenso m\u00fcssen Sie m\u00f6glicherweise Ports oder den Zugriff f\u00fcr jede dieser Umgebungen anpassen. In diesen Szenarien kann es flexibler sein, ein anderes Kustomize-Overlay auf das gleiche gerenderte Helm-Chart f\u00fcr jede Umgebung anzuwenden.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Zu diesem Zweck bietet das kubectl-Kommandozeilenprogramm die <\/span><a href=\"https:\/\/kubectl.docs.kubernetes.io\/references\/kubectl\/apply\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\"><code>apply -k<\/code> -Option<\/span><\/a><span style=\"font-weight: 400\">. Diese Funktion wendet Kustomize anhand von <code>kustomization.yaml<\/code> -Dateien in den Verzeichnissen an.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Lassen Sie uns zun\u00e4chst das Helm-Chart unter Verwendung des <\/span><a href=\"https:\/\/helm.sh\/docs\/helm\/helm_template\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">helm template<\/span><\/a>-Befehls lokal rendern<span style=\"font-weight: 400\">\u00a0. Dadurch wird eine YAML-Datei mit allen aufgel\u00f6sten Werten ausgegeben, die wir in einer lokalen Datei erfassen.<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ mkdir templates_new\r\n$ helm template . &gt; templates_new\/pod.yaml\r\n\r\n$ $ cat templates_new\/pod.yaml\r\n---\r\n# Source: helloworld\/templates\/~g_v1_pod_helloworld.yaml\r\napiVersion: v1\r\nkind: Pod\r\nmetadata:\r\n  name: helloworld\r\nspec:\r\n  containers:\r\n  - args:\r\n    - \/bin\/echo My name is Gary. I work for Marketing\r\n      department. Our company name is ABC Company\r\n    command:\r\n    - \/bin\/sh\r\n    - -c\r\n    env: null\r\n    image: alpine\r\n    name: hello\r\n  restartPolicy: Never<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Erstellen Sie eine neue Kustomization-Datei, um wie folgt Labels zu unserem Pod hinzuzuf\u00fcgen:<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ cat templates_new\/kustomization.yaml\r\ncommonLabels:\r\n  app: helloworld\r\nresources:\r\n- templates_new\/pod.yaml\r\n<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Lassen Sie uns nun <code>kubectl apply -k<\/code> verwenden, unser Chart mit neuen Labels zu installieren:<\/span><\/p>\n<div style=\"background: #272b33;overflow: auto;width: auto;border: solid gray;border-width: .1em .1em .1em .8em;padding: .2em .6em\">\n<pre style=\"margin: 0;line-height: 125%\"><span style=\"color: #999999\">$ helm delete helloworld\r\n\r\n$ kubectl apply -k templates_new\/.\r\npod\/helloworld created\r\n\r\n$ kubectl get pods\r\nNAME         READY   STATUS      RESTARTS   AGE\r\nhelloworld   0\/1     Completed   0          10s\r\n\r\n$ kubectl describe pod helloworld\r\nName:         helloworld\r\nNamespace:    default\r\nPriority:     0\r\nNode:         docker-desktop\/192.168.65.3\r\nStart Time:   Mon, 22 Jun 2020 16:22:11 -0700\r\nLabels:       app=helloworld\r\nAnnotations:  Status:  Succeeded\r\n...\r\n...<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Es hat geklappt! Jetzt sind wir in der Lage, das Helm-Chart eines beliebigen Anbieters zu \u00fcbernehmen und unsere eigenen Anpassungen hinzuzuf\u00fcgen, w\u00e4hrend wir weiterhin Updates von Upstream-Diagrammen \u00fcbernehmen.<\/span><\/p>\n<h2><span style=\"font-weight: 400\">Tiefer in das Thema eintauchen<\/span><\/h2>\n<p><span style=\"font-weight: 400\">JFrogs Helm-Charts sind ziemlich komplex, und wir mussten oft mehrere Versionen f\u00fcr unseren internen Gebrauch pflegen. Der Einsatz von Kustomize hat uns geholfen, die manuelle Bearbeitung von Charts zu vermeiden und unsere CI\/CD-Prozesse st\u00e4rker zu automatisieren.<\/span><\/p>\n<p><span style=\"font-weight: 400\">M\u00f6chten Sie mehr erfahren? Sehen Sie sich die Aufzeichnung unseres Webinars an, in dem es darum geht, <\/span><a href=\"https:\/\/leap.jfrog.com\/WN-2020-07-Power-up-Artifactory-with-Kustomize-and-Helm-US-LP.html\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"font-weight: 400\">Wie Artifactory mit Kustomize und Helm aufger\u00fcstet wird<\/span><\/a><span style=\"font-weight: 400\">. Wir freuen uns darauf, unsere Erfahrungen mit Ihnen zu teilen und Ihnen zu helfen, Ihre Deployments besser zu verwalten!<\/span><\/p>\n<div class=\"youtube\"><iframe frameborder=\"0\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/Rq44PY-xj9M\" width=\"560\"><\/iframe><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Operations-Teams m\u00fcssen das Deployment von Anwendungen automatisieren, und Helm ist die Industriestandardl\u00f6sung f\u00fcr die Bereitstellung in Kubernetes. Wie viele Software-Anbieter bieten auch wir Helm-Charts f\u00fcr die Installation von Artifactoryund anderen JFrog DevOps-Plattformprodukten an, die f\u00fcr die Standard-\/Empfehlungskonfigurationen ausgelegt sind, die die meisten Teams ben\u00f6tigen. Diese Vorlagen bieten dem Kunden einen begrenzten Satz von Konfigurationsoptionen. Wenn &hellip;<\/p>\n","protected":false},"author":140,"featured_media":59984,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[9205],"tags":[],"class_list":["post-80669","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-unkategorisiert"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.6 (Yoast SEO v22.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Wie Helm-Charts f\u00fcr flexible K8s-Deployments angepasst werden | JFrog<\/title>\n<meta name=\"description\" content=\"Erfahren Sie, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Anwendungen f\u00fcr Kubernetes durchzuf\u00fchren und dabei immer die neueste Helm-Chart Version Ihres Anbieters zu verwenden.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/80669\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"So werden Helm-Charts f\u00fcr flexible K8s-Deployments angepasst\" \/>\n<meta property=\"og:description\" content=\"Erfahren Sie, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Anwendungen f\u00fcr Kubernetes durchzuf\u00fchren und dabei immer die neueste Helm-Chart Version Ihres Anbieters zu verwenden.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/\" \/>\n<meta property=\"og:site_name\" content=\"JFrog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/artifrog\" \/>\n<meta property=\"article:published_time\" content=\"2021-08-30T16:46:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-08-30T16:46:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162201\/PowerupHelmCharts-01.png\" \/>\n<meta name=\"author\" content=\"giannit\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments\" \/>\n<meta name=\"twitter:description\" content=\"Erfahren Sie, wie Sie Kustomize-Overlays f\u00fcr benutzerdefinierte Anwendungen f\u00fcr Kubernetes verwenden k\u00f6nnen und dabei immer die neueste Helm-Diagrammversion Ihres Anbieters nutzen.\" \/>\n<meta name=\"twitter:creator\" content=\"@jfrog\" \/>\n<meta name=\"twitter:site\" content=\"@jfrog\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"giannit\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/\"},\"author\":{\"name\":\"giannit\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/person\/b554ace14b37da5eed75bbfc7dd1c1af\"},\"headline\":\"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments\",\"datePublished\":\"2021-08-30T16:46:27+00:00\",\"dateModified\":\"2021-08-30T16:46:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/\"},\"wordCount\":947,\"publisher\":{\"@id\":\"https:\/\/jfrog.com\/de\/#organization\"},\"image\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png\",\"articleSection\":[\"Unkategorisiert\"],\"inLanguage\":\"de-DE\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/\",\"url\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/\",\"name\":\"Wie Helm-Charts f\u00fcr flexible K8s-Deployments angepasst werden | JFrog\",\"isPartOf\":{\"@id\":\"https:\/\/jfrog.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png\",\"datePublished\":\"2021-08-30T16:46:27+00:00\",\"dateModified\":\"2021-08-30T16:46:58+00:00\",\"description\":\"Erfahren Sie, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Anwendungen f\u00fcr Kubernetes durchzuf\u00fchren und dabei immer die neueste Helm-Chart Version Ihres Anbieters zu verwenden.\",\"breadcrumb\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage\",\"url\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png\",\"contentUrl\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png\",\"width\":204,\"height\":148,\"caption\":\"Blog\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jfrog.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jfrog.com\/de\/#website\",\"url\":\"https:\/\/jfrog.com\/de\/\",\"name\":\"JFrog\",\"description\":\"Deliver Trusted Software Releases at Speed and Scale\",\"publisher\":{\"@id\":\"https:\/\/jfrog.com\/de\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jfrog.com\/de\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de-DE\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jfrog.com\/de\/#organization\",\"name\":\"JFrog\",\"url\":\"https:\/\/jfrog.com\/de\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg\",\"contentUrl\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg\",\"width\":74,\"height\":73,\"caption\":\"JFrog\"},\"image\":{\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/artifrog\",\"https:\/\/x.com\/jfrog\",\"https:\/\/www.linkedin.com\/company\/455737\",\"https:\/\/www.youtube.com\/channel\/UCh2hNg76zo3d1qQqTWIQxDg\",\"https:\/\/www.wikidata.org\/wiki\/Q98608948\"],\"description\":\"We set out on our Liquid Software journey in 2008, with the mission to transform the way enterprises manage and release software updates. The world expects software to update continuously, securely, non-intrusively and without user intervention. This hyper-connected experience can only be enabled by automation with an end-to-end DevOps platform and a binary-centric focus. With this in mind, we\u2019ve developed the JFrog Platform, ushering in a new era of DevOps and DevSecOps standards that power continuous updates. More than a decade after our founding, with thousands of customers and millions of users globally, JFrog has become the \u201cDatabase of DevOps\u201d and the de-facto standard in release and update management.\",\"legalName\":\"Jfrog, Inc.\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1001\",\"maxValue\":\"5000\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/person\/b554ace14b37da5eed75bbfc7dd1c1af\",\"name\":\"giannit\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fca3c188acf34ea94b72429eb16d496a8d0b50af476289bb5f51c8283e5c5b1c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fca3c188acf34ea94b72429eb16d496a8d0b50af476289bb5f51c8283e5c5b1c?s=96&d=mm&r=g\",\"caption\":\"giannit\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Wie Helm-Charts f\u00fcr flexible K8s-Deployments angepasst werden | JFrog","description":"Erfahren Sie, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Anwendungen f\u00fcr Kubernetes durchzuf\u00fchren und dabei immer die neueste Helm-Chart Version Ihres Anbieters zu verwenden.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/80669","og_locale":"de_DE","og_type":"article","og_title":"So werden Helm-Charts f\u00fcr flexible K8s-Deployments angepasst","og_description":"Erfahren Sie, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Anwendungen f\u00fcr Kubernetes durchzuf\u00fchren und dabei immer die neueste Helm-Chart Version Ihres Anbieters zu verwenden.","og_url":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/","og_site_name":"JFrog","article_publisher":"https:\/\/www.facebook.com\/artifrog","article_published_time":"2021-08-30T16:46:27+00:00","article_modified_time":"2021-08-30T16:46:58+00:00","og_image":[{"url":"https:\/\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162201\/PowerupHelmCharts-01.png"}],"author":"giannit","twitter_card":"summary_large_image","twitter_title":"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments","twitter_description":"Erfahren Sie, wie Sie Kustomize-Overlays f\u00fcr benutzerdefinierte Anwendungen f\u00fcr Kubernetes verwenden k\u00f6nnen und dabei immer die neueste Helm-Diagrammversion Ihres Anbieters nutzen.","twitter_creator":"@jfrog","twitter_site":"@jfrog","twitter_misc":{"Written by":"giannit","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#article","isPartOf":{"@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/"},"author":{"name":"giannit","@id":"https:\/\/jfrog.com\/de\/#\/schema\/person\/b554ace14b37da5eed75bbfc7dd1c1af"},"headline":"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments","datePublished":"2021-08-30T16:46:27+00:00","dateModified":"2021-08-30T16:46:58+00:00","mainEntityOfPage":{"@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/"},"wordCount":947,"publisher":{"@id":"https:\/\/jfrog.com\/de\/#organization"},"image":{"@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage"},"thumbnailUrl":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png","articleSection":["Unkategorisiert"],"inLanguage":"de-DE"},{"@type":"WebPage","@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/","url":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/","name":"Wie Helm-Charts f\u00fcr flexible K8s-Deployments angepasst werden | JFrog","isPartOf":{"@id":"https:\/\/jfrog.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage"},"image":{"@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage"},"thumbnailUrl":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png","datePublished":"2021-08-30T16:46:27+00:00","dateModified":"2021-08-30T16:46:58+00:00","description":"Erfahren Sie, wie Sie Kustomize-Overlays verwenden k\u00f6nnen, um benutzerdefinierte Anwendungen f\u00fcr Kubernetes durchzuf\u00fchren und dabei immer die neueste Helm-Chart Version Ihres Anbieters zu verwenden.","breadcrumb":{"@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/"]}]},{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#primaryimage","url":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png","contentUrl":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2020\/07\/01162937\/PowerupHelmCharts-04.png","width":204,"height":148,"caption":"Blog"},{"@type":"BreadcrumbList","@id":"https:\/\/jfrog.com\/de\/blog\/power-up-helm-charts-using-kustomize-to-manage-kubernetes-deployments\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jfrog.com\/de\/"},{"@type":"ListItem","position":2,"name":"Helm-Charts effektiv nutzen: Verwendung von Kustomize zur Verwaltung von Kubernetes-Deployments"}]},{"@type":"WebSite","@id":"https:\/\/jfrog.com\/de\/#website","url":"https:\/\/jfrog.com\/de\/","name":"JFrog","description":"Deliver Trusted Software Releases at Speed and Scale","publisher":{"@id":"https:\/\/jfrog.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jfrog.com\/de\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de-DE"},{"@type":"Organization","@id":"https:\/\/jfrog.com\/de\/#organization","name":"JFrog","url":"https:\/\/jfrog.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg","contentUrl":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg","width":74,"height":73,"caption":"JFrog"},"image":{"@id":"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/artifrog","https:\/\/x.com\/jfrog","https:\/\/www.linkedin.com\/company\/455737","https:\/\/www.youtube.com\/channel\/UCh2hNg76zo3d1qQqTWIQxDg","https:\/\/www.wikidata.org\/wiki\/Q98608948"],"description":"We set out on our Liquid Software journey in 2008, with the mission to transform the way enterprises manage and release software updates. The world expects software to update continuously, securely, non-intrusively and without user intervention. This hyper-connected experience can only be enabled by automation with an end-to-end DevOps platform and a binary-centric focus. With this in mind, we\u2019ve developed the JFrog Platform, ushering in a new era of DevOps and DevSecOps standards that power continuous updates. More than a decade after our founding, with thousands of customers and millions of users globally, JFrog has become the \u201cDatabase of DevOps\u201d and the de-facto standard in release and update management.","legalName":"Jfrog, Inc.","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1001","maxValue":"5000"}},{"@type":"Person","@id":"https:\/\/jfrog.com\/de\/#\/schema\/person\/b554ace14b37da5eed75bbfc7dd1c1af","name":"giannit","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/jfrog.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fca3c188acf34ea94b72429eb16d496a8d0b50af476289bb5f51c8283e5c5b1c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fca3c188acf34ea94b72429eb16d496a8d0b50af476289bb5f51c8283e5c5b1c?s=96&d=mm&r=g","caption":"giannit"}}]}},"_links":{"self":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/80669","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/users\/140"}],"replies":[{"embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/comments?post=80669"}],"version-history":[{"count":2,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/80669\/revisions"}],"predecessor-version":[{"id":80676,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/80669\/revisions\/80676"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/media\/59984"}],"wp:attachment":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/media?parent=80669"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/categories?post=80669"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/tags?post=80669"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}