Veröffentlichen von ESB-Artefakten in einer dezentralen Docker-Registry - Cloud - 8.0

Handbuch mit Best Practices für Talend Software Development Life Cycle

Version
Cloud
8.0
Language
Deutsch
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Administration Center
Talend Artifact Repository
Talend Cloud Management Console
Talend CommandLine
Talend JobServer
Talend Remote Engine
Talend Studio
Content
Administration und Überwachung
Design und Entwicklung
Implementierung
Last publication date
2023-09-14
Vorhanden in...

Cloud API Services Platform

Cloud Data Fabric

Data Fabric

Data Services Platform

ESB

MDM Platform

Real-Time Big Data Platform

Vorbereitungen

Stellen Sie sicher, dass in Ihrem Artefakt-Repository (Nexus, Artifactory) eine Docker-Registry konfiguriert wurde.

Prozedur

  1. Öffnen Sie eine Befehlszeile bzw. ein Terminal und führen Sie den folgenden Befehl aus, um Artefakte zu generieren und in einer dezentralen Nexus Docker-Registry zu implementieren:
    $ mvn -Dgeneration.type=local -Dproduct.path=<STUDIO_HOME> -s <STUDIO_HOME>/configuration/maven_user_settings.xml \
    						deploy -Pdocker \
    						-f <GIT_PROJECT_PATH>/<STUDIO_PROJECT>/poms \
    						-pl jobs/process/demorest_0.1,jobs/routes/demorestroute_0.1,jobs/routes/directsedademo_0.1 \
    						-Djkube.docker.username=<username> -Djkube.docker.password=<password> -Djkube.docker.push.registry=<ARTIFACT_REPOSITORY_HOST>:<DOCKER_REGISTRY_PORT>
    						
    						[INFO] Scanning for projects...
    						...
    						[INFO] ------------------------------------------------------------------------
    						[INFO] Reactor Build Order:
    						[INFO]
    						[INFO] <STUDIO_PROJECT> DemoREST-0.1.0 (0.1,Jobs) Microservice Jar           [jar]
    						[INFO] <STUDIO_PROJECT> DirectSEDADemo-0.1.0 (0.1,Routes) Microservice Jar   [jar]
    						[INFO] <STUDIO_PROJECT> DemoRESTRoute-0.1.0 (0.1,Routes) Microservice Jar    [jar]
    						...
    						[INFO] --- fabric8-maven-plugin:4.0.0:push (push-image) @ DemoREST ---
    						[INFO] F8> The push refers to repository [<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorest]
    						[INFO] F8> latest: digest: sha256:a63c7e4672efc1632fd696eb24fe0a7dba89c0b5697b96b370f98546c6e2108e size: 1993
    						[INFO] F8> Pushed <STUDIO_PROJECT>/demorest in 8 seconds
    						[INFO] F8> The push refers to repository [<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorest]
    						[INFO] F8> 0.1.0: digest: sha256:a63c7e4672efc1632fd696eb24fe0a7dba89c0b5697b96b370f98546c6e2108e size: 1993
    						...
    						[INFO] --- fabric8-maven-plugin:4.0.0:push (push-image) @ DirectSEDADemo ---
    						[INFO] F8> The push refers to repository [<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/directsedademo]
    						[INFO] F8> latest: digest: sha256:0de9fe92ae8f4a39c7af7a676682f4a6868b4416deebc52acc4f581e0a2e16c4 size: 1992
    						[INFO] F8> Pushed <STUDIO_PROJECT>/directsedademo in 4 seconds
    						[INFO] F8> The push refers to repository [<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/directsedademo]
    						[INFO] F8> 0.1.0: digest: sha256:0de9fe92ae8f4a39c7af7a676682f4a6868b4416deebc52acc4f581e0a2e16c4 size: 1992
    						...
    						[INFO] --- fabric8-maven-plugin:4.0.0:push (push-image) @ DemoRESTRoute ---
    						[INFO] F8> The push refers to repository [<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute]
    						[INFO] F8> latest: digest: sha256:080892fee69d06676da35aaf57bfe7ff7c4e1a544fb08b0ca86976b5d44e015e size: 1992
    						[INFO] F8> Pushed <STUDIO_PROJECT>/demorestroute in 5 seconds
    						[INFO] F8> The push refers to repository [<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute]
    						[INFO] F8> 0.1.0: digest: sha256:080892fee69d06676da35aaf57bfe7ff7c4e1a544fb08b0ca86976b5d44e015e size: 1992
    						...
    						[INFO] ------------------------------------------------------------------------
    						[INFO] Reactor Summary for <STUDIO_PROJECT> DemoREST-0.1.0 (0.1,Jobs) Microservice Jar 0.1.0:
    						[INFO]
    						[INFO] <STUDIO_PROJECT> DemoREST-0.1.0 (0.1,Jobs) Microservice Jar SUCCESS [02:54 min]
    						[INFO] <STUDIO_PROJECT> DirectSEDADemo-0.1.0 (0.1,Routes) Microservice Jar SUCCESS [ 35.323 s]
    						[INFO] <STUDIO_PROJECT> DemoRESTRoute-0.1.0 (0.1,Routes) Microservice Jar SUCCESS [ 32.586 s]
    						[INFO] ------------------------------------------------------------------------
    						[INFO] BUILD SUCCESS
    						[INFO] ------------------------------------------------------------------------
    						[INFO] Total time:  04:08 min
    						[INFO] Finished at: 2019-08-12T10:12:03+02:00
    						[INFO] ------------------------------------------------------------------------
    Hierbei gilt:
    • <STUDIO_HOME> entspricht dem Installationspfad von Talend Studio.
    • <GIT_PROJECT_PATH> entspricht dem Pfad Ihres Git-Projekts bzw. des Git-Klonergebnisses.
    • <STUDIO_PROJECT> entspricht dem Namen des Talend Studio-Projekts, der identisch ist mit dem Namen des Git-Projekts. Projektnamen dürfen nur Großbuchstaben enthalten.
    • <ARTIFACT_REPOSITORY_HOST> entspricht dem Host des Artefakt-Repository (Nexus, Artifactory).
    • <ARTIFACT_REPOSITORY_DOCKER_REGISTRY> entspricht dem Host der URL der Docker-Registry für das Artefakt-Repository (Nexus, Artifactory).
    • <DOCKER_REGISTRY_PORT> entspricht dem für den Zugriff auf das Docker-Repository angebundenen Port (spezifisch für Nexus).
    Tipp: Verwenden Sie den Befehl -Dstudio.prometheus.metrics=true bei der Veröffentlichung in Docker, um die Camel-Metriken für Prometheus anzuzeigen und mehr Details zu den implementierten Routen bereitzustellen (Anzahl der verarbeiteten Austauschvorgänge, Anzahl der Fehler, Requests pro Sekunde usw.).
  2. Stellen Sie eine Verbindung zur Docker-Registry her und rufen Sie die Daten per Pull-Vorgang aus der dezentralen in die lokale Docker-Registry ab.
    $ docker login <ARTIFACT_REPOSITORY_HOST>:<DOCKER_REGISTRY_PORT>
    						Login Succeeded
    						
    						$ docker pull <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute
    						Using default tag: latest
    						latest: Pulling from <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute
    						Digest: sha256:4c8afd00802eef89197c65f6855e2dfc1609ca518022526207fcb4c56709e958
    						Status: Downloaded newer image for <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute:latest
    						<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute:latest
    						
    						$ docker pull <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorest
    						Using default tag: latest
    						latest: Pulling from repository/local-docker/jgr_docker_ci/demorest
    						Digest: sha256:a63c7e4672efc1632fd696eb24fe0a7dba89c0b5697b96b370f98546c6e2108e
    						Status: Downloaded newer image for <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorest:latest
    						<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorest:latest
    						$ docker pull <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/directsedademo
    						Using default tag: latest
    						latest: Pulling from repository/local-docker/jgr_docker_ci/directsedademo
    						Digest: sha256:0de9fe92ae8f4a39c7af7a676682f4a6868b4416deebc52acc4f581e0a2e16c4
    						Status: Downloaded newer image for <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/directsedademo:latest
    						<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/directsedademo:latest
    						
    						$ docker images
    						REPOSITORY                                                                   TAG                 IMAGE ID            CREATED             SIZE
    						<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute         latest              5901eb7a8c7d        1 minute ago        258MB
    						<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/directsedademo        latest              36aaa145fd80        1 minute ago        237MB
    						<ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorest              latest              afdaba21fb8a        1 minute ago        307MB