automation-suite
2023.10
true
Automation Suite unter Linux – Installationsanleitung
Last updated 4. Okt. 2024

So löschen Sie Bilder aus dem alten Installationsprogramm nach dem Upgrade

Wenn Sie nach einem Upgrade Probleme mit Sicherheitslücken im Bild oder dem Speicherverbrauch haben, können Sie die Bilder des alten Installationsprogramms löschen.

Ab Automation Suite 2023.10.5 können Sie die Images der vorherigen Version nach dem Upgrade aus der clusterinternen Docker-Registrierung bereinigen, indem Sie die folgenden Befehle verwenden:

  • So löschen Sie die Images, die nach dem Upgrade nicht mehr benötigt werden:

    cd /opt/UiPathAutomationSuite/<new_version>/installer
    ./bin/uipathctl registry cleanup --manifest versions/docker-images.jsoncd /opt/UiPathAutomationSuite/<new_version>/installer
    ./bin/uipathctl registry cleanup --manifest versions/docker-images.json
  • Um die Images der On-Demand-Pakete zu löschen, müssen Sie diese Images ausdrücklich entfernen:

    ./bin/uipathctl registry cleanup --manifest /versions/docker-images.json --images-list images-list.json./bin/uipathctl registry cleanup --manifest /versions/docker-images.json --images-list images-list.json
    Das folgende Beispiel zeigt das Format der images-list.json -Datei:
    {
        "cleanup-list": [
            "aicenter/python39:23.10.0-rc4",
            "image2",
            "image3"
        ]
    }{
        "cleanup-list": [
            "aicenter/python39:23.10.0-rc4",
            "image2",
            "image3"
        ]
    }

Führen Sie bei früheren Automation Suite-Versionen die folgenden Schritte aus, um diesen optionalen Vorgang nach dem Upgrade durchzuführen:

  1. Aktualisieren Sie IMG, TAG, USER, PASS, registry und latest_image_json entsprechend der Clusterkonfiguration im folgenden Skript und führen Sie es dann aus:
    #!/bin/bash
    
    ### Please change below variables as required
    IMG=<E.g. dataservice/dataservice-designer>
    TAG=<E.g. v20231116-tag>
    USER=<E.g. "admin">
    PASS=<E.g. "password">
    registry=<E.g. "registry.mycluster.com">
    latest_image_json=<E.g. "/opt/UiPathAutomationSuite/UiPath_Installer/versions/docker-images.json">
    ####
    
    [[ -f "${latest_image_json}" ]] || {
    	echo "File "$latest_image_json" doesn't exist"
    	exit 1
    }
    
    cat "${latest_image_json}" | tr -d '",' | grep -w "${IMG}:${TAG}" >> /dev/null && {
    	echo "Image ${IMG}:${TAG} is being used in cluster. Will skip the deletion."
    	exit 0
    }
    
    echo "Deleting image ${IMG}:${TAG}"
    
    cred="-u ${USER}:${PASS}"
    
    for i in `curl -k -H 'Accept: application/vnd.docker.distribution.manifest.v2+json' $cred "https://$registry/v2/$IMG/manifests/$TAG" | jq -r '.layers | .[] | .digest'`; do
    	curl -k  -H "Accept: application/vnd.docker.distribution.manifest.v2+json"  $cred -X DELETE "https://$registry/v2/$IMG/manifests/$i"
    done
    
    for i in `curl -k -H 'Accept: application/vnd.docker.distribution.manifest.v2+json' $cred "https://$registry/v2/$IMG/manifests/$TAG" | jq -r '.config.digest'`; do
    	curl -k  -H "Accept: application/vnd.docker.distribution.manifest.v2+json"  $cred -X DELETE "https://$registry/v2/$IMG/manifests/$i"
    done#!/bin/bash
    
    ### Please change below variables as required
    IMG=<E.g. dataservice/dataservice-designer>
    TAG=<E.g. v20231116-tag>
    USER=<E.g. "admin">
    PASS=<E.g. "password">
    registry=<E.g. "registry.mycluster.com">
    latest_image_json=<E.g. "/opt/UiPathAutomationSuite/UiPath_Installer/versions/docker-images.json">
    ####
    
    [[ -f "${latest_image_json}" ]] || {
    	echo "File "$latest_image_json" doesn't exist"
    	exit 1
    }
    
    cat "${latest_image_json}" | tr -d '",' | grep -w "${IMG}:${TAG}" >> /dev/null && {
    	echo "Image ${IMG}:${TAG} is being used in cluster. Will skip the deletion."
    	exit 0
    }
    
    echo "Deleting image ${IMG}:${TAG}"
    
    cred="-u ${USER}:${PASS}"
    
    for i in `curl -k -H 'Accept: application/vnd.docker.distribution.manifest.v2+json' $cred "https://$registry/v2/$IMG/manifests/$TAG" | jq -r '.layers | .[] | .digest'`; do
    	curl -k  -H "Accept: application/vnd.docker.distribution.manifest.v2+json"  $cred -X DELETE "https://$registry/v2/$IMG/manifests/$i"
    done
    
    for i in `curl -k -H 'Accept: application/vnd.docker.distribution.manifest.v2+json' $cred "https://$registry/v2/$IMG/manifests/$TAG" | jq -r '.config.digest'`; do
    	curl -k  -H "Accept: application/vnd.docker.distribution.manifest.v2+json"  $cred -X DELETE "https://$registry/v2/$IMG/manifests/$i"
    done
  2. Starten Sie den Registrierungs-Pod für die Ausführung der Speicherbereinigung neu oder führen Sie in den Registrierungs-Pod aus und führen Sie die Speicherbereinigung mit dem folgenden Befehl aus:

    registry garbage-collect /etc/docker/registry/config.ymlregistry garbage-collect /etc/docker/registry/config.yml

War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
Uipath Logo White
Vertrauen und Sicherheit
© 2005–2024 UiPath. Alle Rechte vorbehalten