Best Practices für Container

Auf dieser Seite finden Sie Informationen zu den Best Practices für das Erstellen und Ausführen von Container-Images.

Container erstellen

Die Art und Weise, wie Sie Container-Images erstellen, kann sich auf die Geschwindigkeit von Builds und Bereitstellungen sowie auf den Aufwand für die Verwaltung Ihrer Images auswirken.

Machen Sie sich also mit den Best Practices zum Erstellen von Containern vertraut, um Container leichter zu erstellen und auszuführen.

Sie können auch die Best Practices von Docker zum Erstellen von Images lesen.

Betrieb von Containern

Best Practices für den Betrieb von Containern kennenlernen. Dazu gehören Empfehlungen für Sicherheit, Monitoring und Logging, die die Ausführung von Anwendungen in Google Kubernetes Engine und in Containern im Allgemeinen vereinfachen.

Hinweise zu öffentlichen Registries

Beachten Sie folgende Fälle:

Images aus öffentlichen Quellen verwenden

Wenn Sie Images aus öffentlichen Quellen wie Docker Hub verwenden, führen Sie Code ein, den Ihre Organisation nicht in Ihrer Softwarelieferkette kontrolliert. So verringern Sie das Risiko:

  • Erstellen Sie eigene Bilder, um den Inhalt von Bildern zu steuern.
  • Verwenden Sie ein standardisiertes Basis-Image und bauen Sie auf diesem Image auf.
  • Scannen Sie Images auf Sicherheitslücken und beheben Sie erkannte Sicherheitslücken.
  • Erzwingen Sie Standards und Richtlinien für die von Ihnen bereitgestellten Images.

Überlegungen zu öffentlichen Images

Registries öffentlich machen

Sie können die Registry in Ihrem Google Cloud-Projekt veröffentlichen, indem Sie der Identität allUsers Lesezugriff auf den Registry-Storage-Bucket gewähren.

Wenn alle Nutzer Google Cloud-Konten haben, können Sie den Zugriff auf authentifizierte Nutzer stattdessen mit der Identität allAuthenticatedUsers beschränken.

Beachten Sie die folgenden Richtlinien, bevor Sie eine Registry veröffentlichen:

  • Achten Sie darauf, dass alle in der Registry gespeicherten Images öffentlich freigegeben werden können und keine Anmeldedaten, personenbezogenen Daten oder vertraulichen Daten enthalten.
  • Ihnen wird ausgehender Netzwerktraffic in Rechnung gestellt, wenn Nutzer Images abrufen. Wenn Sie eine große Menge an Internet-Download-Traffic erwarten, sollten Sie die damit verbundenen Kosten berücksichtigen.
  • Standardmäßig haben Projekte ein unbegrenztes nutzerbezogenes Kontingent. Um Missbrauch zu verhindern, begrenzen Sie das nutzerbezogene Kontingent in Ihrem Projekt.

Nicht verwendete Images entfernen

Entfernen Sie nicht verwendete Container-Images, um die Speicherkosten zu senken und das Risiko zu verringern, dass ältere Software verwendet wird. Es gibt eine Reihe von Tools, die Ihnen bei dieser Aufgabe helfen können, einschließlich gcr-cleaner. Das gcr-cleaner-Tool ist kein offizielles Google-Produkt.

Containersicherheit beurteilen

Das Center for Internet Security (CIS) bietet eine Docker-Benchmark zur Bewertung der Sicherheit eines Docker-Containers.

Außerdem stellt Docker ein Open-Source-Skript namens Docker Bench for Security bereit. Mit diesem Skript können Sie einen laufenden Docker-Container anhand der CIS-Docker-Benchmark prüfen.

Mit Docker Bench for Security lassen sich viele Elemente der CIS-Docker-Benchmark prüfen, allerdings nicht alle. Beispielsweise kann das Skript nicht feststellen, ob der Host für den Container gehärtet ist oder ob das Container-Image personenbezogene Daten enthält. Sehen Sie sich alle Elemente der Benchmark an und identifizieren Sie diejenigen, die möglicherweise zusätzlich geprüft werden müssen.

Deployments schützen

Hier erfahren Sie, wie Sie eine sichere Softwarelieferkette erstellen und wie Sie mit dem Scannen auf Sicherheitslücken und der Binärautorisierung in Google Cloud Richtlinien für das Deployment definieren und durchsetzen.

Sie können sich auch ein Video ansehen, in dem erläutert wird, wie Sie Ihre Softwarelieferkette schützen.