[{"data":1,"prerenderedAt":705},["ShallowReactive",2],{"/de-de/blog/gitlab-container-registry/":3,"navigation-de-de":33,"banner-de-de":453,"footer-de-de":466,"Mark Pundsack":677,"next-steps-de-de":690},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":23,"_id":26,"_type":27,"title":28,"_source":29,"_file":30,"_stem":31,"_extension":32},"/de-de/blog/gitlab-container-registry","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"Was ist das Gitlab Container Registry?"," Die auf Open Source basierende GitLab Container Registry ist nicht nur eine eigenständige Registry, sondern vollständig in GitLab integriert.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665223/Blog/Hero%20Images/containers.jpg","https://about.gitlab.com/blog/gitlab-container-registry","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Was ist das Gitlab Container Registry?\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Mark Pundsack\"}],\n        \"datePublished\": \"2016-05-23\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21,"updatedDate":22},[18],"Mark Pundsack","2016-05-23","# Was ist das GitLab Container Registry? \n\nSeit dem Launch von GitLab 8.8. ist es möglich, eine Pipeline in GitLab aufzubauen und deine Builds, Tests, Deploys und jede andere Phase des Lebenszyklus deiner Software zu visualisieren. Dafür nutzt du die GitLab Container Registry.\n\nIn diesem Artikel erfährst du, was das Container Registry ist, wie du es anwendest und wie es dir dein Arbeitsleben leichter machen kann.\n\n## GitLab Container Registry – wie funktioniert’s?\n\nDie GitLab Container Registry bietet eine sichere und private Speicherlösung für Docker-Images. Sie ist nicht nur eine eigenständige Datenbank, sondern auch nahtlos in GitLab integriert. Unser Ziel bei GitLab ist es, ein konsistentes und integriertes Benutzererlebnis zu bieten. Die Registry ist dabei keine Ausnahme. Mit ihrer Integration kannst du deine Images problemlos für GitLab CI verwenden, spezielle Images für Tags oder Branches erstellen und vieles mehr.\nSie ist bei Installation bereits vollständig in die Git-Repository-Verwaltung integriert – es ist also keine zusätzliche Installation erforderlich. Zudem ermöglicht sie ein einfaches Hoch- und Herunterladen von Images über GitLab CI.\n\nIn der Verwaltungsdokumentation findest du detaillierte Anleitungen, wie du die Container-Registry in deiner GitLab-Instanz aktivieren kannst. Diese umfassende Dokumentation deckt alles ab, von der Konfiguration selbstsignierter Zertifikate bis hin zu Umgebungsvariablen, Garbage-Collect-Befehlen, verschiedenen APIs, Curl-Befehlen, der Festlegung von Ratenlimits und der Integration einer externen Registry. \n\n## Grundlagen zu Docker\n\nEin unverzichtbarer Bestandteil eines Docker-orientierten Arbeitsablaufs ist ein Image, das sämtliche Ressourcen für die Ausführung einer Anwendung beinhaltet. Häufig werden Images automatisch im Rahmen der Continuous Integration erstellt, wodurch sie bei jeder Codeänderung aktualisiert werden. Wenn Images für die gemeinsame Nutzung zwischen Entwickler(innen) und Maschinen erstellt werden sollen, ist es wichtig, dass sie an einem zentralen Ort gespeichert sind. Hierbei kommt eine Container Registry ins Spiel.\n\nDie Registry fungiert als Speicherort für Images. Hier können sie gehostet und für zukünftige Verwendung markiert werden. Entwickler(innen) können ihre eigene Registry einrichten, um private Images zu speichern oder temporäre Images für Testzwecke zu nutzen. Mit der Nutzung der GitLab Container Registry ist es nicht erforderlich, einen zusätzlichen Dienst einzurichten und zu verwalten oder auf eine öffentliche Registry zurückzugreifen.\n\n## Vollständige Integration\n\nDie GitLab Container Registry ist vollständig in GitLab integriert und erleichtert Entwickler(innen) das Programmieren, Testen und Bereitstellen von Docker-Container-Images mit GitLab [CI](https://about.gitlab.com/de-de/topics/ci-cd/) und anderen Docker-kompatiblen Tools.\n\nDie Benutzerauthentifizierung erfolgt über GitLab selbst, sodass alle Benutzer- und Gruppendefinitionen beachtet werden. Es müssen keine Repositories in der Registry erstellt werden, da das Projekt bereits in GitLab definiert ist.\n\nProjekte haben eine neue Registerkarte, Container Registry, in der alle mit dem Projekt verbundenen Images aufgelistet sind. Jedes Projekt kann über ein Image-Repository verfügen, das jedoch projektspezifisch ausgeschaltet werden kann. Entwickler(innen) können Images einfach von GitLab CI hoch- und herunterladen. Es ist nicht erforderlich, zusätzliche Software herunterzuladen oder zu installieren.\n\n## Sicherheit mit dem GitLab Container Scanning\n\nGitLab Container Scanning ist eine Sicherheitsfunktion, die in GitLab integriert ist und dazu dient, Docker-Images auf potenzielle Sicherheitsrisiken zu überprüfen. Diese Funktion ermöglicht es Entwickler(innen), während des Entwicklungsprozesses automatisch Sicherheitsanalysen auf Docker-Images durchzuführen, bevor sie in Produktionsumgebungen eingesetzt werden.\n\nKonkret scannt das GitLab Container Scanning Tool die Docker-Images nach bekannten Sicherheitslücken, Schwachstellen und Bedrohungen. Dies erfolgt durch die Analyse der in den Images enthaltenen Pakete und Bibliotheken sowie deren Abhängigkeiten. \n\nEs identifiziert dabei potenzielle Sicherheitsprobleme und liefert den Entwickler(innen) oder dem Team detaillierte Berichte darüber, was gefunden wurde und wie diese Schwachstellen behoben werden können. Durch die Integration von Docker Container Scanning in den Entwicklungsworkflow können Sicherheitslücken frühzeitig erkannt und behoben werden, noch bevor die Software in Produktion geht. Dies trägt dazu bei, die Sicherheit der Anwendungen zu erhöhen und das Risiko von Sicherheitsverletzungen zu minimieren.\n\n## Wie kann die GitLab Container Registry meinen Workflow vereinfachen?\n\nDie GitLab Container Registry ist nahtlos und sicher. Hier sind einige Beispiele dafür, wie sie Entwicklungs- und Bereitstellungsabläufe vereinfachen kann:\n\n- Erstelle ganz einfach Docker-Images mithilfe von GitLab CI und speichere sie in der GitLab Container Registry.\n\n- Erstelle Images basierend auf Branches, Tags oder nach beliebigen Workflow-Anforderungen und speichere sie unkompliziert auf GitLab.\n\n- Nutze deine eigenen Build-Images aus der Registry, um Anwendungen gegen sie zu testen und den Docker-Workflow zu vereinfachen.\n\n- Ermögliche dem Team, einfach an den Images mitzuarbeiten, indem es den vertrauten Workflow verwendet. Mithilfe von GitLab CI können Images, die auf deinem Image basieren, automatisch aktualisiert werden, sodass Korrekturen und neue Funktionen problemlos auf Basis-Images angewendet werden können, die von anderen Teams verwendet werden.\n\n- Implementiere einen vollständigen Continuous-Deployment- und Delivery-Workflow, indem du dein Container-as-a-Service (CaaS) so konfigurierst, dass es Images direkt aus der GitLab Container Registry verwendet. Dadurch kannst du automatisch Anwendungen in der Cloud bereitstellen (Docker Cloud, Docker Swarm, Kubernetes und andere), sobald du deine Images erstellt und getestet hast.\n\n## So startest du mit GitLab Container Registry\n\nUm mit der GitLab Container Registry zu beginnen, wende dich zunächst an deine(n) Systemadministrator(in) und bitte sie/ihn, die Container Registry gemäß den Anweisungen in der Administrationsdokumentation zu aktivieren. Nach der Aktivierung durch die/den Administrator(in) kannst du die Container Registry für dein spezifisches Projekt aktivieren.\n\nUm deine neue Container Registry nutzen zu können, musst du dich zunächst anmelden:\ndocker login registry.example.com\n\nDanach kannst du einfach Images erstellen und an GitLab senden:\ndocker build -t registry.example.com/group/project .\ndocker push registry.example.com/group/project\n\nGitLab bietet eine unkomplizierte Verwaltung der Container Registry. Gehe einfach zu deinem Projekt, öffne den Deploy-Tab und wähle  Container Registry. Dort werden alle Tags in deinem Repository aufgeführt. Hier kannst du sie löschen sowie Details zu jedem Tag anzeigen, wie beispielsweise das Veröffentlichungsdatum und den Speicherplatzverbrauch.\n\nWeitere Informationen findest du im GitLab-Container-Registry-Benutzerhandbuch.\n\n## Verwendung mit GitLab CI\nMithilfe der integrierten CI-Lösung in GitLab kannst du deine Container-Images erstellen, pushen und bereitstellen.\n\nHinweis: Um Docker-in-Docker-Images zu verwenden, muss das Flag privileged in der Konfiguration deines Runners gesetzt sein. \n\nNachfolgend siehst du ein Beispiel für eine GitLab CI-Konfigurationsdatei (.gitlab-ci.yml), die ein Image erstellt, Tests ausführt und bei erfolgreichem Test das Build taggt und in das Container Repository hochlädt:\n\nbuild_image:\n  image: docker:git\n  services:\n  - docker:dind\n  script:\n    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.example.com\n    - docker build -t registry.example.com/my-group/my-project .\n    - docker run registry.example.com/my-group/my-project /script/to/run/tests\n    - docker push registry.example.com/my-group/my-project:latest\n  only:\n    - master\n\nHier ist ein detailliertes Beispiel, bei dem die Aufgaben in vier Phasen aufgeteilt werden, einschließlich zweier paralleler Tests. Der Build wird in der Container Registry gespeichert und von den nachfolgenden Phasen verwendet, wobei das Image bei Bedarf automatisch heruntergeladen wird. Änderungen am master werden auch als latest getaggt und mithilfe eines spezifischen Bereitstellungsskripts für die Anwendung bereitgestellt.\n\nimage: docker:git\nservices:\n- docker:dind\n\nstages:\n- build\n- test\n- release\n- deploy\n\nvariables:\n  CONTAINER_TEST_IMAGE: registry.example.com/my-group/my-project:$CI_BUILD_REF_NAME\n  CONTAINER_RELEASE_IMAGE: registry.example.com/my-group/my-project:latest\n\nbefore_script:\n  - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.example.com\n\nbuild:\n  stage: build\n  script:\n    - docker build -t $CONTAINER_TEST_IMAGE .\n    - docker push $CONTAINER_TEST_IMAGE\n\ntest1:\n  stage: test\n  script:\n    - docker run $CONTAINER_TEST_IMAGE /script/to/run/tests\n\ntest2:\n  stage: test\n  script:\n    - docker run $CONTAINER_TEST_IMAGE /script/to/run/another/test\n\nrelease-image:\n  stage: release\n  script:\n    - docker pull $CONTAINER_TEST_IMAGE\n    - docker tag $CONTAINER_TEST_IMAGE $CONTAINER_RELEASE_IMAGE\n    - docker push $CONTAINER_RELEASE_IMAGE\n  only:\n    - master\n\ndeploy:\n  stage: deploy\n  script:\n    - ./deploy.sh\n  only:\n    - master\n\n## Fazit\n\nMit der GitLab Container Registry wird das Testen und Bereitstellen von Docker-Containern so einfach wie nie zuvor. Sie ist sowohl in der GitLab Community Edition (CE) als auch in der GitLab Enterprise Edition (EE) ohne zusätzliche Kosten verfügbar und wird in derselben Infrastruktur wie der Rest deiner GitLab-Instanz installiert.\n\nDie Aktivierung der Container Registry auf GitLab.com ist unkompliziert – zudem entstehen dadurch keine weiteren Kosten. Du kannst sie sofort nutzen, um deine Container-Images zu verwalten und bereitzustellen.\n","engineering","2024-12-17",{"slug":24,"featured":6,"template":25},"gitlab-container-registry","BlogPost","content:de-de:blog:gitlab-container-registry.yml","yaml","Gitlab Container Registry","content","de-de/blog/gitlab-container-registry.yml","de-de/blog/gitlab-container-registry","yml",{"_path":34,"_dir":35,"_draft":6,"_partial":6,"_locale":7,"data":36,"_id":449,"_type":27,"title":450,"_source":29,"_file":451,"_stem":452,"_extension":32},"/shared/de-de/main-navigation","de-de",{"logo":37,"freeTrial":42,"sales":47,"login":52,"items":57,"search":390,"minimal":426,"duo":440},{"config":38},{"href":39,"dataGaName":40,"dataGaLocation":41},"/de-de/","gitlab logo","header",{"text":43,"config":44},"Kostenlose Testversion anfordern",{"href":45,"dataGaName":46,"dataGaLocation":41},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":48,"config":49},"Vertrieb kontaktieren",{"href":50,"dataGaName":51,"dataGaLocation":41},"/de-de/sales/","sales",{"text":53,"config":54},"Anmelden",{"href":55,"dataGaName":56,"dataGaLocation":41},"https://gitlab.com/users/sign_in/","sign in",[58,102,201,206,311,371],{"text":59,"config":60,"cards":62,"footer":85},"Plattform",{"dataNavLevelOne":61},"platform",[63,69,77],{"title":59,"description":64,"link":65},"Die umfassendste KI-basierte DevSecOps-Plattform",{"text":66,"config":67},"Erkunde unsere Plattform",{"href":68,"dataGaName":61,"dataGaLocation":41},"/de-de/platform/",{"title":70,"description":71,"link":72},"GitLab Duo (KI)","Entwickle Software schneller mit KI in jeder Phase der Entwicklung",{"text":73,"config":74},"Lerne GitLab Duo kennen",{"href":75,"dataGaName":76,"dataGaLocation":41},"/de-de/gitlab-duo/","gitlab duo ai",{"title":78,"description":79,"link":80},"Gründe, die für GitLab sprechen","10 Gründe, warum Unternehmen sich für GitLab entscheiden",{"text":81,"config":82},"Mehr erfahren",{"href":83,"dataGaName":84,"dataGaLocation":41},"/de-de/why-gitlab/","why gitlab",{"title":86,"items":87},"Erste Schritte mit",[88,93,98],{"text":89,"config":90},"Platform Engineering",{"href":91,"dataGaName":92,"dataGaLocation":41},"/de-de/solutions/platform-engineering/","platform engineering",{"text":94,"config":95},"Entwicklererfahrung",{"href":96,"dataGaName":97,"dataGaLocation":41},"/de-de/developer-experience/","Developer experience",{"text":99,"config":100},"MLOps",{"href":101,"dataGaName":99,"dataGaLocation":41},"/de-de/topics/devops/the-role-of-ai-in-devops/",{"text":103,"left":104,"config":105,"link":107,"lists":111,"footer":183},"Produkt",true,{"dataNavLevelOne":106},"solutions",{"text":108,"config":109},"Alle Lösungen anzeigen",{"href":110,"dataGaName":106,"dataGaLocation":41},"/de-de/solutions/",[112,138,161],{"title":113,"description":114,"link":115,"items":120},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":116},{"icon":117,"href":118,"dataGaName":119,"dataGaLocation":41},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[121,125,129,134],{"text":122,"config":123},"CI/CD",{"href":124,"dataGaLocation":41,"dataGaName":122},"/de-de/solutions/continuous-integration/",{"text":126,"config":127},"KI-unterstützte Entwicklung",{"href":75,"dataGaLocation":41,"dataGaName":128},"AI assisted development",{"text":130,"config":131},"Quellcodeverwaltung",{"href":132,"dataGaLocation":41,"dataGaName":133},"/de-de/solutions/source-code-management/","Source Code Management",{"text":135,"config":136},"Automatisierte Softwarebereitstellung",{"href":118,"dataGaLocation":41,"dataGaName":137},"Automated software delivery",{"title":139,"description":140,"link":141,"items":146},"Sicherheit","Entwickle schneller, ohne die Sicherheit zu gefährden",{"config":142},{"href":143,"dataGaName":144,"dataGaLocation":41,"icon":145},"/de-de/solutions/security-compliance/","security and compliance","ShieldCheckLight",[147,151,156],{"text":148,"config":149},"Sicherheit und Compliance",{"href":143,"dataGaLocation":41,"dataGaName":150},"Security & Compliance",{"text":152,"config":153},"Schutz der Software-Lieferkette",{"href":154,"dataGaLocation":41,"dataGaName":155},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":157,"config":158},"Compliance und Governance",{"href":159,"dataGaLocation":41,"dataGaName":160},"/de-de/solutions/continuous-software-compliance/","Compliance and governance",{"title":162,"link":163,"items":168},"Bewertung",{"config":164},{"icon":165,"href":166,"dataGaName":167,"dataGaLocation":41},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[169,173,178],{"text":170,"config":171},"Sichtbarkeit und Bewertung",{"href":166,"dataGaLocation":41,"dataGaName":172},"Visibility and Measurement",{"text":174,"config":175},"Wertstrommanagement",{"href":176,"dataGaLocation":41,"dataGaName":177},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":179,"config":180},"Analysen und Einblicke",{"href":181,"dataGaLocation":41,"dataGaName":182},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":184,"items":185},"GitLab für",[186,191,196],{"text":187,"config":188},"Enterprise",{"href":189,"dataGaLocation":41,"dataGaName":190},"/de-de/enterprise/","enterprise",{"text":192,"config":193},"Kleinunternehmen",{"href":194,"dataGaLocation":41,"dataGaName":195},"/de-de/small-business/","small business",{"text":197,"config":198},"den öffentlichen Sektor",{"href":199,"dataGaLocation":41,"dataGaName":200},"/de-de/solutions/public-sector/","public sector",{"text":202,"config":203},"Preise",{"href":204,"dataGaName":205,"dataGaLocation":41,"dataNavLevelOne":205},"/de-de/pricing/","pricing",{"text":207,"config":208,"link":210,"lists":214,"feature":298},"Ressourcen",{"dataNavLevelOne":209},"resources",{"text":211,"config":212},"Alle Ressourcen anzeigen",{"href":213,"dataGaName":209,"dataGaLocation":41},"/de-de/resources/",[215,248,270],{"title":216,"items":217},"Erste Schritte",[218,223,228,233,238,243],{"text":219,"config":220},"Installieren",{"href":221,"dataGaName":222,"dataGaLocation":41},"/de-de/install/","install",{"text":224,"config":225},"Kurzanleitungen",{"href":226,"dataGaName":227,"dataGaLocation":41},"/de-de/get-started/","quick setup checklists",{"text":229,"config":230},"Lernen",{"href":231,"dataGaLocation":41,"dataGaName":232},"https://university.gitlab.com/","learn",{"text":234,"config":235},"Produktdokumentation",{"href":236,"dataGaName":237,"dataGaLocation":41},"https://docs.gitlab.com/","product documentation",{"text":239,"config":240},"Best-Practice-Videos",{"href":241,"dataGaName":242,"dataGaLocation":41},"/de-de/getting-started-videos/","best practice videos",{"text":244,"config":245},"Integrationen",{"href":246,"dataGaName":247,"dataGaLocation":41},"/de-de/integrations/","integrations",{"title":249,"items":250},"Entdecken",[251,256,260,265],{"text":252,"config":253},"Kundenerfolge",{"href":254,"dataGaName":255,"dataGaLocation":41},"/de-de/customers/","customer success stories",{"text":257,"config":258},"Blog",{"href":259,"dataGaName":5,"dataGaLocation":41},"/de-de/blog/",{"text":261,"config":262},"Remote",{"href":263,"dataGaName":264,"dataGaLocation":41},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":266,"config":267},"TeamOps",{"href":268,"dataGaName":269,"dataGaLocation":41},"/de-de/teamops/","teamops",{"title":271,"items":272},"Vernetzen",[273,278,283,288,293],{"text":274,"config":275},"GitLab-Services",{"href":276,"dataGaName":277,"dataGaLocation":41},"/de-de/services/","services",{"text":279,"config":280},"Community",{"href":281,"dataGaName":282,"dataGaLocation":41},"/community/","community",{"text":284,"config":285},"Forum",{"href":286,"dataGaName":287,"dataGaLocation":41},"https://forum.gitlab.com/","forum",{"text":289,"config":290},"Veranstaltungen",{"href":291,"dataGaName":292,"dataGaLocation":41},"/events/","events",{"text":294,"config":295},"Partner",{"href":296,"dataGaName":297,"dataGaLocation":41},"/de-de/partners/","partners",{"backgroundColor":299,"textColor":300,"text":301,"image":302,"link":306},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":303,"config":304},"the source promo card",{"src":305},"/images/navigation/the-source-promo-card.svg",{"text":307,"config":308},"Lies die News",{"href":309,"dataGaName":310,"dataGaLocation":41},"/de-de/the-source/","the source",{"text":312,"config":313,"lists":315},"Unternehmen",{"dataNavLevelOne":314},"company",[316],{"items":317},[318,323,329,331,336,341,346,351,356,361,366],{"text":319,"config":320},"Über",{"href":321,"dataGaName":322,"dataGaLocation":41},"/de-de/company/","about",{"text":324,"config":325,"footerGa":328},"Karriere",{"href":326,"dataGaName":327,"dataGaLocation":41},"/jobs/","jobs",{"dataGaName":327},{"text":289,"config":330},{"href":291,"dataGaName":292,"dataGaLocation":41},{"text":332,"config":333},"Geschäftsführung",{"href":334,"dataGaName":335,"dataGaLocation":41},"/company/team/e-group/","leadership",{"text":337,"config":338},"Team",{"href":339,"dataGaName":340,"dataGaLocation":41},"/company/team/","team",{"text":342,"config":343},"Handbuch",{"href":344,"dataGaName":345,"dataGaLocation":41},"https://handbook.gitlab.com/","handbook",{"text":347,"config":348},"Investor Relations",{"href":349,"dataGaName":350,"dataGaLocation":41},"https://ir.gitlab.com/","investor relations",{"text":352,"config":353},"Trust Center",{"href":354,"dataGaName":355,"dataGaLocation":41},"/de-de/security/","trust center",{"text":357,"config":358},"AI Transparency Center",{"href":359,"dataGaName":360,"dataGaLocation":41},"/de-de/ai-transparency-center/","ai transparency center",{"text":362,"config":363},"Newsletter",{"href":364,"dataGaName":365,"dataGaLocation":41},"/company/contact/","newsletter",{"text":367,"config":368},"Presse",{"href":369,"dataGaName":370,"dataGaLocation":41},"/press/","press",{"text":372,"config":373,"lists":374},"Kontakt",{"dataNavLevelOne":314},[375],{"items":376},[377,380,385],{"text":48,"config":378},{"href":50,"dataGaName":379,"dataGaLocation":41},"talk to sales",{"text":381,"config":382},"Support",{"href":383,"dataGaName":384,"dataGaLocation":41},"/support/","get help",{"text":386,"config":387},"Kundenportal",{"href":388,"dataGaName":389,"dataGaLocation":41},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":391,"login":392,"suggestions":399},"Schließen",{"text":393,"link":394},"Um Repositories und Projekte zu durchsuchen, melde dich an bei",{"text":395,"config":396},"gitlab.com",{"href":55,"dataGaName":397,"dataGaLocation":398},"search login","search",{"text":400,"default":401},"Vorschläge",[402,405,410,412,417,422],{"text":70,"config":403},{"href":75,"dataGaName":404,"dataGaLocation":398},"GitLab Duo (AI)",{"text":406,"config":407},"Code Suggestions (KI)",{"href":408,"dataGaName":409,"dataGaLocation":398},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":122,"config":411},{"href":124,"dataGaName":122,"dataGaLocation":398},{"text":413,"config":414},"GitLab auf AWS",{"href":415,"dataGaName":416,"dataGaLocation":398},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":418,"config":419},"GitLab auf Google Cloud",{"href":420,"dataGaName":421,"dataGaLocation":398},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":423,"config":424},"Warum GitLab?",{"href":83,"dataGaName":425,"dataGaLocation":398},"Why GitLab?",{"freeTrial":427,"mobileIcon":432,"desktopIcon":437},{"text":428,"config":429},"Kostenlos testen",{"href":430,"dataGaName":46,"dataGaLocation":431},"https://gitlab.com/-/trials/new/","nav",{"altText":433,"config":434},"GitLab-Symbol",{"src":435,"dataGaName":436,"dataGaLocation":431},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":433,"config":438},{"src":439,"dataGaName":436,"dataGaLocation":431},"/images/brand/gitlab-logo-type.svg",{"freeTrial":441,"mobileIcon":445,"desktopIcon":447},{"text":442,"config":443},"Erfahre mehr über GitLab Duo",{"href":75,"dataGaName":444,"dataGaLocation":431},"gitlab duo",{"altText":433,"config":446},{"src":435,"dataGaName":436,"dataGaLocation":431},{"altText":433,"config":448},{"src":439,"dataGaName":436,"dataGaLocation":431},"content:shared:de-de:main-navigation.yml","Main Navigation","shared/de-de/main-navigation.yml","shared/de-de/main-navigation",{"_path":454,"_dir":35,"_draft":6,"_partial":6,"_locale":7,"title":455,"titleMobile":455,"button":456,"config":461,"_id":463,"_type":27,"_source":29,"_file":464,"_stem":465,"_extension":32},"/shared/de-de/banner","GitLab 18 und der nächste Schritt im Bereich der intelligenten DevSecOps. Sei am 24. Juni dabei.",{"text":457,"config":458},"Jetzt registrieren",{"href":459,"dataGaName":460,"dataGaLocation":41},"/de-de/eighteen/","gitlab 18 banner",{"layout":462},"release","content:shared:de-de:banner.yml","shared/de-de/banner.yml","shared/de-de/banner",{"_path":467,"_dir":35,"_draft":6,"_partial":6,"_locale":7,"data":468,"_id":673,"_type":27,"title":674,"_source":29,"_file":675,"_stem":676,"_extension":32},"/shared/de-de/main-footer",{"text":469,"source":470,"edit":476,"contribute":481,"config":486,"items":491,"minimal":665},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":471,"config":472},"Quelltext der Seite anzeigen",{"href":473,"dataGaName":474,"dataGaLocation":475},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":477,"config":478},"Diese Seite bearbeiten",{"href":479,"dataGaName":480,"dataGaLocation":475},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":482,"config":483},"Beteilige dich",{"href":484,"dataGaName":485,"dataGaLocation":475},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":487,"facebook":488,"youtube":489,"linkedin":490},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[492,515,570,600,635],{"title":59,"links":493,"subMenu":498},[494],{"text":495,"config":496},"DevSecOps-Plattform",{"href":68,"dataGaName":497,"dataGaLocation":475},"devsecops platform",[499],{"title":202,"links":500},[501,505,510],{"text":502,"config":503},"Tarife anzeigen",{"href":204,"dataGaName":504,"dataGaLocation":475},"view plans",{"text":506,"config":507},"Vorteile von Premium",{"href":508,"dataGaName":509,"dataGaLocation":475},"/de-de/pricing/premium/","why premium",{"text":511,"config":512},"Vorteile von Ultimate",{"href":513,"dataGaName":514,"dataGaLocation":475},"/de-de/pricing/ultimate/","why ultimate",{"title":516,"links":517},"Lösungen",[518,523,526,528,533,538,542,545,548,553,555,557,560,565],{"text":519,"config":520},"Digitale Transformation",{"href":521,"dataGaName":522,"dataGaLocation":475},"/de-de/topics/digital-transformation/","digital transformation",{"text":148,"config":524},{"href":143,"dataGaName":525,"dataGaLocation":475},"security & compliance",{"text":135,"config":527},{"href":118,"dataGaName":119,"dataGaLocation":475},{"text":529,"config":530},"Agile Entwicklung",{"href":531,"dataGaName":532,"dataGaLocation":475},"/de-de/solutions/agile-delivery/","agile delivery",{"text":534,"config":535},"Cloud-Transformation",{"href":536,"dataGaName":537,"dataGaLocation":475},"/de-de/topics/cloud-native/","cloud transformation",{"text":539,"config":540},"SCM",{"href":132,"dataGaName":541,"dataGaLocation":475},"source code management",{"text":122,"config":543},{"href":124,"dataGaName":544,"dataGaLocation":475},"continuous integration & delivery",{"text":174,"config":546},{"href":176,"dataGaName":547,"dataGaLocation":475},"value stream management",{"text":549,"config":550},"GitOps",{"href":551,"dataGaName":552,"dataGaLocation":475},"/de-de/solutions/gitops/","gitops",{"text":187,"config":554},{"href":189,"dataGaName":190,"dataGaLocation":475},{"text":192,"config":556},{"href":194,"dataGaName":195,"dataGaLocation":475},{"text":558,"config":559},"Öffentlicher Sektor",{"href":199,"dataGaName":200,"dataGaLocation":475},{"text":561,"config":562},"Bildungswesen",{"href":563,"dataGaName":564,"dataGaLocation":475},"/de-de/solutions/education/","education",{"text":566,"config":567},"Finanzdienstleistungen",{"href":568,"dataGaName":569,"dataGaLocation":475},"/de-de/solutions/finance/","financial services",{"title":207,"links":571},[572,574,576,578,581,583,586,588,590,592,594,596,598],{"text":219,"config":573},{"href":221,"dataGaName":222,"dataGaLocation":475},{"text":224,"config":575},{"href":226,"dataGaName":227,"dataGaLocation":475},{"text":229,"config":577},{"href":231,"dataGaName":232,"dataGaLocation":475},{"text":234,"config":579},{"href":236,"dataGaName":580,"dataGaLocation":475},"docs",{"text":257,"config":582},{"href":259,"dataGaName":5,"dataGaLocation":475},{"text":252,"config":584},{"href":585,"dataGaName":255,"dataGaLocation":475},"/customers/",{"text":261,"config":587},{"href":263,"dataGaName":264,"dataGaLocation":475},{"text":274,"config":589},{"href":276,"dataGaName":277,"dataGaLocation":475},{"text":266,"config":591},{"href":268,"dataGaName":269,"dataGaLocation":475},{"text":279,"config":593},{"href":281,"dataGaName":282,"dataGaLocation":475},{"text":284,"config":595},{"href":286,"dataGaName":287,"dataGaLocation":475},{"text":289,"config":597},{"href":291,"dataGaName":292,"dataGaLocation":475},{"text":294,"config":599},{"href":296,"dataGaName":297,"dataGaLocation":475},{"title":312,"links":601},[602,604,606,608,610,612,614,619,624,626,628,630],{"text":319,"config":603},{"href":321,"dataGaName":314,"dataGaLocation":475},{"text":324,"config":605},{"href":326,"dataGaName":327,"dataGaLocation":475},{"text":332,"config":607},{"href":334,"dataGaName":335,"dataGaLocation":475},{"text":337,"config":609},{"href":339,"dataGaName":340,"dataGaLocation":475},{"text":342,"config":611},{"href":344,"dataGaName":345,"dataGaLocation":475},{"text":347,"config":613},{"href":349,"dataGaName":350,"dataGaLocation":475},{"text":615,"config":616},"Umwelt, Soziales und Governance",{"href":617,"dataGaName":618,"dataGaLocation":475},"/de-de/environmental-social-governance/","environmental, social and governance",{"text":620,"config":621},"Vielfalt, Inklusion und Zugehörigkeit",{"href":622,"dataGaName":623,"dataGaLocation":475},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":352,"config":625},{"href":354,"dataGaName":355,"dataGaLocation":475},{"text":362,"config":627},{"href":364,"dataGaName":365,"dataGaLocation":475},{"text":367,"config":629},{"href":369,"dataGaName":370,"dataGaLocation":475},{"text":631,"config":632},"Transparenzerklärung zu moderner Sklaverei",{"href":633,"dataGaName":634,"dataGaLocation":475},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":636,"links":637},"Nimm Kontakt auf",[638,641,643,645,650,655,660],{"text":639,"config":640},"Sprich mit einem Experten/einer Expertin",{"href":50,"dataGaName":51,"dataGaLocation":475},{"text":381,"config":642},{"href":383,"dataGaName":384,"dataGaLocation":475},{"text":386,"config":644},{"href":388,"dataGaName":389,"dataGaLocation":475},{"text":646,"config":647},"Status",{"href":648,"dataGaName":649,"dataGaLocation":475},"https://status.gitlab.com/","status",{"text":651,"config":652},"Nutzungsbedingungen",{"href":653,"dataGaName":654,"dataGaLocation":475},"/terms/","terms of use",{"text":656,"config":657},"Datenschutzerklärung",{"href":658,"dataGaName":659,"dataGaLocation":475},"/de-de/privacy/","privacy statement",{"text":661,"config":662},"Cookie-Einstellungen",{"dataGaName":663,"dataGaLocation":475,"id":664,"isOneTrustButton":104},"cookie preferences","ot-sdk-btn",{"items":666},[667,669,671],{"text":651,"config":668},{"href":653,"dataGaName":654,"dataGaLocation":475},{"text":656,"config":670},{"href":658,"dataGaName":659,"dataGaLocation":475},{"text":661,"config":672},{"dataGaName":663,"dataGaLocation":475,"id":664,"isOneTrustButton":104},"content:shared:de-de:main-footer.yml","Main Footer","shared/de-de/main-footer.yml","shared/de-de/main-footer",[678],{"_path":679,"_dir":680,"_draft":6,"_partial":6,"_locale":7,"content":681,"config":685,"_id":687,"_type":27,"title":18,"_source":29,"_file":688,"_stem":689,"_extension":32},"/en-us/blog/authors/mark-pundsack","authors",{"name":18,"config":682},{"headshot":683,"ctfId":684},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","markpundsack",{"template":686},"BlogAuthor","content:en-us:blog:authors:mark-pundsack.yml","en-us/blog/authors/mark-pundsack.yml","en-us/blog/authors/mark-pundsack",{"_path":691,"_dir":35,"_draft":6,"_partial":6,"_locale":7,"header":692,"eyebrow":693,"blurb":694,"button":695,"secondaryButton":699,"_id":701,"_type":27,"title":702,"_source":29,"_file":703,"_stem":704,"_extension":32},"/shared/de-de/next-steps","Stelle jetzt bessere Software schneller bereit","Mehr als 50 % der Fortune-100-Unternehmen vertrauen GitLab","Erlebe, was dein Team mit der intelligenten\n\n\nDevSecOps-Plattform erreichen kann.\n",{"text":43,"config":696},{"href":697,"dataGaName":46,"dataGaLocation":698},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":48,"config":700},{"href":50,"dataGaName":51,"dataGaLocation":698},"content:shared:de-de:next-steps.yml","Next Steps","shared/de-de/next-steps.yml","shared/de-de/next-steps",1752683351217]