Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

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

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 Studio Talend.
    • <GIT_PROJECT_PATH> entspricht dem Pfad Ihres Git-Projekts bzw. des Git-Klonergebnisses.
    • <STUDIO_PROJECT> entspricht dem Namen des Studio Talend-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).
    InformationshinweisTipp: 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

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!