Wer suchet, der findet...

GitHub Container Registry: Container Images schneller finden
Keine Kommentare

Die Entwickler-Community nutzt Container-Technologien mehr denn je zuvor. Damit der Überblick nicht verloren geht und die Anwendungen einfach installierbar bleiben, ist es sinnvoll, eine Paketverwaltung zu verwenden. Ist eine Container Registry direkt mit den Repositorys integriert, können Entwickler-Teams ihre Container-Images sinnvoll verwalten.

Paketverwaltungen erleichtern es Entwicklern, ihre Programmierprojekte zu veröffentlichen und zu verwalten. Der Code wird dabei in Pakete verpackt, die alle Dateien enthalten, die logisch zusammengehören und notwendige Konfigurationsinformationen mitbringen. Sowohl bei privat als auch bei öffentlich angelegten Packages ist es so deutlich einfacher, diese zum Download anzubieten bzw. selbst benötigte Abhängigkeiten herunterzuladen.

Mit der Package Registry stellt GitHub den Entwicklern eine in das GitHub-Ökosystem integrierte Paketverwaltung zur Verfügung. Die zusätzlichen Funktionen, wie zum Beispiel zum Suchen, Browsen oder Verwalten, fügen sich in die Oberfläche ein. Webhooks und API-Support stehen ebenfalls weiterhin zur Verfügung. Über die gleichen Nutzer- und Team-Berechtigungen lassen sich Code und Packages zugleich verwalten.

Viele Programmierprojekte nutzen vorgefertigte Packages oder Packages aus anderen Projekten – einer der wichtigen Vorteile der Technologie. Dadurch entstehen Abhängigkeiten der Packages untereinander, die Auswirkungen auf das gesamte Projekt haben. GitHub unterstützt Entwickler dabei, die Packages zu finden, die für solch eine Nutzung zur Verfügung stehen, weil sie bereits entsprechend freigegeben wurden. Im Falle von GitHub enthalten die Pakete zudem immer Angaben zum Inhalt, zu Download-Statistiken und zur Historie. Das erleichtert das Auffinden bestimmter Pakete zusätzlich und zeigt den Besitzern, wie andere Benutzer und andere Projekte ihre Pakete verwenden.

Die Paketbeschreibung entstammen den Readme-Dateien der zugehörigen Repositorys. Die erzeugten Pakete können dieselbe Sichtbarkeit und die Berechtigungen, die mit dem Repository verbunden sind erben: Das heißt, auch wenn unterschiedliche Tools für die Verwaltung von Code und Packages verwendet werden, brauchen Berechtigungen nicht manuell synchronisiert werden. Bei Bedarf ist es auch möglich, Docker-Pakete unabhängig vom Ursprungs-Repository zur Verfügung zu stellen und andere Berechtigungen zu definieren – diese basieren aber auch in diesem Fall auf den gewohnten GitHub-Teams der zugehörigen GitHub-Organisation.

Bessere Zusammenarbeit für Entwickler-Teams

Seit der Einführung der Package Registry Mitte letzten Jahres, wurden hunderte Millionen Pakete über unsere Plattform heruntergeladen. Neben npm-Paketen (Javascript)  waren dies vor allem Docker-Packages – ein klarer Trend in Richtung Kubernetes und anderen Container-Technologien. Software Supply Chain muss schlüssig nachvollziehbar sein und Entwickler-Teams brauchen einen zentralen Ort, an dem sie gemeinsam ihre Container-Images verwalten können. Zudem werden Container-Strukturen samt ihren Abhängigkeiten schnell komplex und unübersichtlich. Das erhöht das Sicherheitsrisiko – und Entwickler müssen darauf achten, dass bei der Veröffentlichung keine anfälligen bzw. schädlichen Komponenten enthalten sind.

Eine Container Registry stellt die dafür notwendigen Funktionen zur Verfügung. Die zentrale Verwaltung von Packages fördert zum einen die Verwendung von Standard-Basis-Images – ein großer Vorteil, wenn später Entwicklungszyklen und Release-Stände nachverfolgt werden sollen. Zum anderen ist es möglich, sehr granulare Berechtigungen zu vergeben, um bestehende Workflows umzusetzen und Verantwortlichkeiten innerhalb des Teams oder Unternehmens abzubilden. Bei Bedarf lassen sich die Berechtigungen für ein Paket von den Berechtigungen für den Quellcode trennen. So kann die Veröffentlichung beispielsweise auf einen kleinen Kreis an Nutzern beschränkt werden. Um Sicherheitslücken frühzeitig zu erkennen und ihre Verbreitung über die verschiedenen miteinander agierenden Packages hinweg zu verhindern, können die Container automatisch auf sicherheitsrelevante Schwachstellen, wie zum Beispiel Malware, gescannt werden. Der gesamte Entwicklungszyklus profitiert davon, wenn von Beginn an weniger Sicherheitslücken enthalten sind.

GitHub Container Registry jetzt testen und kostenlos benutzen

Entwickler können die Funktionen der GitHub Paketverwaltung und Container Registry unkompliziert ausprobieren und so prüfen, ob diese für ihre Projekte sinnvoll sind. Mit GitHub Actions können verschiedene Paketformate einfach in GitHub’s Container Registry publiziert werden.. Für das Publizieren in die Container Registry schlägt GitHub Actions vorkonfigurierte Workflows vor, die auf den im zugehörigen Repository genutzten Technologien beruhen. Zudem kann der Standard „Publish Docker-Container“-Workflow benutzt werden.

Für öffentliche Repositorys steht die GitHub Container Registry generell kostenlos zur Verfügung, um den Open-Source-Gedanken weiterhin zu stärken. Während der Beta-Phase, die momentan läuft, kann die Container-Registry auch für private Container Images genutzt werden. Als Teil von GitHub Packages wird sich die Container Registry dann in das Enterprise Cloud-Preismodell einfügen. Bei GitHub Enterprise Server 2.22 ist GitHub Packages als Beta ohne Zusatzkosten inkludiert – ab der nächsten Version von GitHub Enterprise Server wird GitHub Packages inklusive Container Registry für den Produktivbetrieb freigegeben.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
X
- Gib Deinen Standort ein -
- or -