App-Workloads aus Images in einer öffentlichen Registry bereitstellen
Stellen Sie die App mit Code Engine bereit. Sie können eine App über die Konsole oder mit der CLI erstellen.
App über die Konsole bereitstellen
Implementieren Sie eine Anwendung mit einem Image aus einer öffentlichen Registry, für die keine Berechtigungsnachweise erforderlich sind, mit der Code Engine-Konsole.
Dieses Beispiel verweist auf das öffentliche icr.io/codeengine/helloworld-Image in IBM Cloud® Container Registry. Alternativ können Sie auch auf ein Image in einem
öffentlichen Docker Hub oder einem Image in einer privaten Registry verweisen.
- Öffnen Sie die Code Engine-Konsole.
- Wählen Sie „ Mit der Erstellung beginnen “.
- Wählen Sie ein Projekt aus der Liste der verfügbaren Projekte aus. Sie können auch ein neues erstellen. Sie müssen über ein ausgewähltes Projekt verfügen, um eine Anwendung bereitstellen zu können.
- Wählen Sie Anwendung aus.
- Geben Sie einen Namen für die Anwendung ein. Verwenden Sie einen Namen für die Anwendung, der innerhalb des Projekts eindeutig ist.
- Geben Sie ein Container-Image für Ihre App an, z. B.
icr.io/codeengine/helloworld. Wenn Sie über einen eigenen Quellcode verfügen, den Sie in ein Container-Image für die App umwandeln möchten, lesen Sie den Abschnitt „ Planung Ihres Builds “. Weitere Informationen zu dem Code, der für das vorliegende Beispiel verwendet wird, finden Sie unterhelloworld. - Ändern Sie alle Standardwerte für Endpunkt- oder Laufzeiteinstellungen. Weitere Informationen zu diesen Optionen finden Sie unter Optionen für Endpunktsichtbarkeit von Apps und Optionen für die Bereitstellung einer App.
- Klicken Sie auf Erstellen.
- Nachdem sich der Anwendungsstatus in Bereit geändert hat, können Sie die Anwendung testen. Klicken Sie auf Anwendung testen und klicken Sie anschließend im Teilfenster 'Anwendung testen' auf Anforderung senden. Um die Anwendung in einer Webseite zu öffnen, klicken Sie auf Anwendungs-URL.
Nachdem Sie Ihre Anwendung bereitgestellt haben, können Sie nun Informationen zu Anwendungsrevisionen und zu allen aktiven Instanzen sowie Konfigurationsdetails anzeigen.
App über die Befehlszeilenschnittstelle bereitstellen
Mit dem Befehl app create können Sie Ihre App über die Befehlszeilenschnittstelle erstellen und bereitstellen. Für diesen Befehl sind ein Name und ein Image erforderlich, weitere optionale Argumente sind möglich.
Eine umfassende Liste der Optionen enthält der Abschnitt über den Befehl ibmcloud ce app create.
Vorbereitende Schritte
- Konfigurieren Sie die Umgebung der Code Engine-Befehlszeilenschnittstelle.
- Erstellen Sie ein Projekt und arbeiten Sie damit.
Der folgende application create-Befehl erstellt und stellt eine App mit dem Namen myapp bereit und verwendet das Container-Image icr.io/codeengine/hello.
ibmcloud ce application create --name myapp --image icr.io/codeengine/hello
Beispielausgabe
Creating application 'myapp'...
OK
[...]
Run 'ibmcloud ce application get -n myapp' to check the application status.
OK
https://myapp.4idmmq6xpss.us-south.codeengine.appdomain.cloud
Die folgende Tabelle vermittelt Ihnen einen Überblick über die Optionen, die in diesem Beispiel beim Befehl app create verwendet werden. Weitere Informationen zum Befehl und den zugehörigen Optionen finden Sie im
Abschnitt über den Befehl ibmcloud ce app create.
| Option | Beschreibung |
|---|---|
--name |
Der Name der Anwendung. Verwenden Sie einen Namen, der innerhalb des Projekts eindeutig ist. Dieser Wert ist erforderlich.
|
--image |
Der Name des Image, das für diese Anwendung verwendet wird. Dieser Wert ist erforderlich. Das Format ist REGISTRY/NAMESPACE/REPOSITORY:TAG. Dabei sind REGISTRY und TAG optional. Wird TAG nicht angegeben, ist latest der Standardwert. Für Bilder im „ Docker Hub“ können Sie die Bild-URL mit „ NAMESPACE/REPOSITORY “ angeben,
da die Standardeinstellung für „ Registry “ „ docker.io “ lautet. Verwenden Sie für andere Registrys REGISTRY/NAMESPACE/REPOSITORY oder REGISTRY/NAMESPACE/REPOSITORY:TAG. |
Nächste Schritte
-
Nachdem Ihre App bereitgestellt wurde, greifen Sie über eine URL auf Ihre App zu.
-
Sie können eine angepasste Domänenzuordnung erstellen und sie Ihrer App zuweisen. Weitere Informationen zum Bereitstellen von Apps in mehreren Regionen mit einem angepassten Domänennamen finden Sie unter Hoch verfügbare Anwendung konfigurieren.
-
Nachdem Ihre App nun bereitgestellt ist, sollten Sie darüber nachdenken, Ihre Apps ereignisgesteuert zu gestalten. Mithilfe von Ereignissubskriptionen können Sie Ihre Apps durch regelmäßige Zeitpläne auslösen oder festlegen, dass Ihre App auf Ereignisse wie Dateiuploads oder Kafka-Nachrichten reagiert.
Nachdem Ihre App bereitgestellt wurde, können Sie Ihre bereitgestellte App aktualisieren und den zugehörigen referenzierten Code auf irgendeine der folgenden Arten verwenden, unabhängig davon, wie Sie Ihre App erstellt oder zuvor aktualisiert haben:
-
Wenn Sie über ein Container-Image gemäß dem Standard der Open Container Initiative(OCI) verfügen, müssen Sie beim Bereitstellen Ihrer App lediglich einen Verweis auf das Image angeben, der auf den Speicherort Ihrer Container-Registry verweist. Sie können Ihre App mit einem Image in einer öffentlichen Registry oder privaten Registry bereitstellen.
Wenn Sie Ihre App mit dem Befehl
app createerstellt und die Option--build-sourceangegeben haben, um das Container-Image aus einer lokalen Quelle oder einer Repository-Quelle zu erstellen, und Sie Ihre App so ändern wollen, dass sie auf ein anderes Container-Image verweist, müssen Sie zuerst die Zuordnung des Builds aus Ihrer App entfernen. Führen Sie beispielsweiseibmcloud ce application update -n APP_NAME --build-clearaus. Nachdem Sie die Zuordnung des Builds aus Ihrer App entfernt haben, können Sie die App aktualisieren, sodass sie auf ein anderes Image verweist. -
Wenn Sie mit Quellcode beginnen, der sich in einem Git-Repository befindet, können Sie es Code Engine überlassen, das Image aus Ihrer Quelle zu erstellen und die App mit einer einzigen Operation bereitzustellen. In diesem Szenario lädt Code Engine Ihr Image in IBM Cloud® Container Registry hoch. Weitere Informationen finden Sie unter App aus Repository-Quellcode bereitstellen. Wenn Sie mehr Kontrolle über den Build Ihres Image wünschen, können Sie das Image mit Code Engine erstellen, bevor Sie Ihre App implementieren.
-
Wenn Sie mit Quellcode beginnen, der sich auf einer lokalen Workstation befindet, können Sie es Code Engine überlassen, das Image aus Ihrer Quelle zu erstellen und die App mit einem einzelnen CLI-Befehl bereitzustellen. In diesem Szenario lädt Code Engine Ihr Image in IBM Cloud® Container Registry hoch. Weitere Informationen finden Sie unter App aus lokalem Quellcode über die CLI bereitstellen. Wenn Sie mehr Kontrolle über den Build Ihres Image wünschen, können Sie das Image mit Code Engine erstellen, bevor Sie Ihre App implementieren.
Sie könnten beispielsweise festlegen, dass Code Engine den Build Ihrer lokalen Quelle handhaben soll, während Sie Ihre Quelle für die App weiterentwickeln. Nachdem das Image ausgereift ist, können Sie die bereitgestellte App aktualisieren, um auf das gewünschte Image zu verweisen. Sie können diesen Prozess nach Bedarf wiederholen.
Wenn Sie Ihre aktualisierte App bereitstellen, wird die neueste Version Ihres referenzierten Container-Image heruntergeladen und bereitgestellt, sofern kein Tag für das Image angegeben ist. Wenn ein Tag für das Image angegeben wird, wird das mit Tags versehene Image für die Implementierung verwendet.
Benötigen Sie weitere Codebeispiele? Schaut euch die Beispiele im Repository „ IBM Cloud Code Engine “ unter GitHub an.