Contenuto principale

Configurazione dell'installazione dal repository Artifactory

R2026b

Artifactory®, pubblicato da JFrog®, è un gestore di repository di artefatti che supporta la gestione delle versioni, il controllo degli accessi e l'integrazione CI/CD. Lo strumento da riga di comando MATLAB® Package Manager (mpm) consente agli utenti di scaricare e installare i prodotti e i pacchetti di supporto di MathWorks® dal repository Artifactory della propria organizzazione. Questo argomento illustra come configurare l'installazione dal repository Artifactory della propria organizzazione per i prodotti e i pacchetti di supporto di MathWorks.

Limiti

Negli ambienti offline, mpm non è in grado di installare pacchetti di supporto contenenti pacchetti di terze parti provenienti da Artifactory. Durante l'installazione, mpm tenta di scaricare i pacchetti di terze parti dai siti dei rispettivi fornitori anziché recuperarli da Artifactory. Se i siti dei fornitori risultano irraggiungibili, mpm genera un errore. Per installare pacchetti di supporto contenenti pacchetti di terze parti esterni ad Artifactory, vedere Installazione dei pacchetti di supporto su computer offline.

Workflow della configurazione dell'installazione

Per configurare l'installazione dei prodotti e dei pacchetti di supporto di MathWorks dal repository Artifactory della propria organizzazione:

  1. Impostare la struttura delle cartelle del repository in Artifactory (passaggio una tantum).

  2. Creare il file di configurazione JSON necessario per l'installazione dei prodotti e dei pacchetti di supporto dal repository (passaggio una tantum).

  3. Scaricare i prodotti e i pacchetti di supporto da MathWorks utilizzando mpm download.

  4. Caricare i prodotti nel repository Artifactory della propria organizzazione.

Steps for configuring installation from your organization's repository

Ripetere i passaggi 3 e 4 sopra descritti per ogni nuova release o aggiornamento dei prodotti e dei pacchetti di supporto di MathWorks.

Gli utenti possono quindi installare i prodotti dal repository utilizzando mpm install e il file di configurazione.

A computer receives an installation of MATLAB from a repository using mpm install and the JSON configuration file.

Impostazione della struttura delle cartelle del repository (passaggio una tantum)

An Artifactory repository with a folder hierarchy

Impostare il repository Artifactory utilizzato per memorizzare i prodotti e i pacchetti di supporto di MathWorks.

  1. In Artifactory, creare un nuovo repository o riutilizzare uno esistente. In entrambi i casi, il tipo di repository deve essere impostato su Generic. URL del repository di esempio:

    https://artifactory.example.com/artifactory/my-repo
  2. Nella cartella di livello superiore del repository Artifactory, creare una sottocartella denominata MathWorks per memorizzare le release di MathWorks.

    MathWorks/

    Nei passaggi successivi, quando si scaricheranno le release dei prodotti e dei pacchetti di supporto da MathWorks, caricarle nella sottocartella MathWorks. Ogni release e aggiornamento verrà memorizzato in una sottocartella separata all'interno della cartella MathWorks (ad esempio, R20XXaU0, R20XXaU1 e così via). Questa struttura di cartelle mostra un repository con più release e aggiornamenti caricati:

      MathWorks/
        R20XXaU0/
        R20XXaU1/
        R20XXaU2/
        ...
        R20XXbU0/
        R20XXbU1/
        R20XXbU2/
        ...

Creazione del file di configurazione del repository (passaggio una tantum)

A JSON configuration file

Creare il file di configurazione JSON che consente agli utenti di installare i prodotti e i pacchetti di supporto. Questo file contiene le informazioni sul repository necessarie per l'installazione.

  1. Creare un file JSON. Ad esempio: my_repo_config.json.

  2. Copiare il seguente contenuto nel file JSON:

    {
      "repository_configuration": [
        {
          "name": "my-repo",
          "url": "https://my-artifactory-instance/my-repo",
          "type": "artifactory",
          "repository_layout": {
            "mathworks_products": "MathWorks"
          },
          "auth": {
            "type": "token",
            "access_token": "${ARTIFACTORY_ACCESS_TOKEN}"
          }
        }
      ]
    }
  3. Modificare i campi del file JSON per il repository.

    • "name": nome del repository Artifactory.

    • "url": URL del repository Artifactory.

    • "type": tipo di repository. Attualmente, "artifactory" è l'unico tipo di repository supportato.

    • "repository_layout": struttura della cartella del repository Artifactory. Ogni sottocampo in repository_layout definisce una sottocartella che memorizza il software MathWorks installabile. Sottocampi supportati:

      • "mathworks_products": nome della sottocartella contenente le release dei prodotti e dei pacchetti di supporto di MathWorks. Ad esempio, si supponga che il file di configurazione contenga questi valori di campo:

        ...
        "url": "https://my-artifactory-instance/my-repo",
        ...
        "repository_layout": {
          "mathworks_products": "MathWorks"
        },
        ...
        Se si installano prodotti e pacchetti di supporto per R2026bU0, mpm recupera i prodotti e i pacchetti di supporto da questo URL:

        https://my-artifactory-instance/my-repo/MathWorks/R2026bU0

    • "auth": dettagli di autenticazione per accedere al repository. Sottocampi supportati:

      • "type": tipo di autenticazione. Attualmente, l'unico tipo supportato è "token".

      • "access_token": token utilizzato per autenticare gli utenti che accedono al repository. Dopo aver ottenuto un token di accesso dall'amministratore IT, impostare il token nella variabile di ambiente ARTIFACTORY_ACCESS_TOKEN. Seguire la procedura della propria organizzazione per l'impostazione delle variabili di ambiente. Sintassi di esempio:

        ARTIFACTORY_ACCESS_TOKEN=abc123xyz456

        Quindi, nel file JSON, specificare il nome della variabile di ambiente nel campo access_token, utilizzando questa sintassi:

        "access_token": "${ARTIFACTORY_ACCESS_TOKEN}"

        In alternativa, è possibile specificare il token di accesso direttamente nel file JSON. Ad esempio:

        "access_token": "abc123xyz456"

        Considerazioni sulla sicurezza: specificare il token di accesso direttamente nel file JSON comporta l'esposizione di credenziali sensibili in testo semplice. Per ridurre il rischio di esporre le credenziali nei file di configurazione, specificare il token di accesso come variabile di ambiente.

  4. Salvare il file JSON in una posizione accessibile agli utenti, ad esempio un'unità condivisa. Se gli utenti possono scaricare i file dal repository Artifactory, valutare la possibilità di caricare il file nel repository Artifactory.

Download dei prodotti da MathWorks

A folder being downloaded from a MathWorks web server

Utilizzare mpm per scaricare i prodotti e i pacchetti di supporto di una release specifica che si desidera caricare su Artifactory. Non è possibile caricare software MathWorks scaricato da altre sorgenti, come ad esempio immagini ISO o DMG.

  1. Acquisire la versione più recente di mpm seguendo le istruzioni riportate in Get MATLAB Package Manager (Ottieni MATLAB Package Manager).

  2. Scaricare i prodotti utilizzando mpm download. Ad esempio, scaricare la release iniziale (aggiornamento 0) R2026b di Simulink® e Deep Learning Toolbox™ Model for ResNet-50 Network da utilizzare sulle piattaforme Linux® (glnxa64), Windows® (win64) e Mac (maca64). Sostituire <USER> con il nome utente del computer. mpm scarica inoltre i prodotti necessari: MATLAB e Deep Learning Toolbox.

    Linux o Mac:

    ./mpm download --release=R2026bU0 --destination=/home/<USER>/Downloads/R2026bU0 --platforms=glnxa64 win64 maca64 --products=Simulink Deep_Learning_Toolbox_Model_for_ResNet-50_Network

    Windows:

    .\mpm.exe download --release=R2026bU0 --destination=C:\Users\<USER>\Downloads\R2026bU0 --platforms=glnxa64 win64 maca64 --products=Simulink Deep_Learning_Toolbox_Model_for_ResNet-50_Network

    Per scaricare un numero elevato di prodotti e pacchetti di supporto, utilizzare l'opzione --inputfile per specificare i prodotti in un file di input. Per i dettagli, vedere l'esempio Download dei prodotti utilizzando il file di input nella pagina di riferimento mpm download.

La cartella R2026bU0 ha questa struttura:

R2026bU0/
  archives/
  mpm/
  ProductFilesInfo.xml

La cartella R2026bU0 contiene i seguenti file e sottocartelle:

  • archives: sottocartella contenente i prodotti e i pacchetti di supporto scaricati.

  • mpm: sottocartella contenente le versioni scaricate di mpm, una per ciascuna piattaforma specificata nell'opzione --platforms di mpm. Gli utenti possono installare i prodotti e i pacchetti di supporto utilizzando queste versioni di mpm, come mostrato in questa struttura di esempio:

    mpm/
      glnxa64/
        mpm
      maca64/
        mpm
      win64/
        mpm.exe

  • ProductFilesInfo.xml: file di metadati contenente le informazioni sui prodotti e sui pacchetti di supporto.

Caricamento dei prodotti su Artifactory

A folder being uploaded to an Artifactory repo

Caricare i prodotti e i pacchetti di supporto scaricati nella sezione precedente su Artifactory. Poiché Artifactory non supporta il caricamento di cartelle, è necessario prima comprimere la cartella scaricata in un file ZIP. Non modificare la struttura o il contenuto di questa cartella prima di comprimerla e caricarla.

  1. Utilizzando lo strumento preferito, comprimere la cartella della release scaricata in un file ZIP. Ad esempio, andare alla cartella scaricata e utilizzare zip (Linux o Mac) o tar (Windows) per comprimere il contenuto in un file ZIP nella cartella principale Downloads.

    Linux o Mac:

    cd /home/<USER>/Downloads/R2026bU0
    zip -r ../R2026bU0.zip ./*
    cd ..

    (Prompt dei comandi) Windows:

    cd C:\Users\<USER>\Downloads\R2026bU0
    tar -a -c -f ..\R2026bU0.zip *
    cd ..

    A seconda del numero di prodotti e pacchetti di supporto scaricati, questo processo può richiedere diversi minuti. Il file ZIP compresso dovrebbe contenere le sottocartelle e il file mostrati in questo esempio:

    R2026bU0.zip
      archives/
      mpm/
      ProductFilesInfo.xml
  2. Nella cartella MathWorks del repository Artifactory, creare una sottocartella in cui caricare il file ZIP. Per creare questa sottocartella, utilizzare JFrog CLI o un altro strumento preferito. L'esempio seguente mostra come creare la cartella utilizzando lo strumento da riga di comando curl per effettuare richieste web HTTPS.

    Linux o Mac:

    curl --user <USER>:<PASSWORD> \
         --request PUT \
         "https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/"

    (Prompt dei comandi) Windows:

    curl --user <USER>:<PASSWORD> ^
         --request PUT ^
         "https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/"

    Il comando curl include queste opzioni:

    • --user <USER>:<PASSWORD>: specificare il nome utente e la password Artifactory. In alternativa, se si utilizza un token di accesso, sostituire --user <USER>:<PASSWORD> con la seguente ulteriore intestazione: --header "Authorization: Bearer <TOKEN>"

    • --request PUT: utilizzare una richiesta PUT in quanto il caricamento modifica il repository.

    • https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/: specificare l'endpoint URL della cartella come apparirà in Artifactory. Includere una barra finale nell'URL. Utilizzare il seguente formato URL:

      https://my-artifactory-instance/my-repo/MathWorks/R20XXyUn/
      • https://my-artifactory-instance/my-repo/ è l'URL del repository Artifactory, come determinato dal campo "url" del file di configurazione del repository.

      • MathWorks/ è la sottocartella che memorizza le release del prodotto e del pacchetto di supporto di MathWorks, come determinata dal sottocampo "mathworks_products" all'interno del campo "repository_layout" del file di configurazione del repository.

      • R20XXyUn/ è una cartella di release, dove R20XXy è il nome della release (ad esempio, R2026b) e Un è il numero di release dell'aggiornamento (ad esempio, U0, U1 e così via).

  3. Caricare il file ZIP nella cartella di release del prodotto appena creata nel repository Artifactory. Utilizzare JFrog CLI o un altro strumento preferito. L'esempio seguente mostra come caricare il file ZIP utilizzando curl.

    Linux o Mac:

    curl --user <USER>:<PASSWORD> \
         --header "X-Explode-Archive:true" \
         --request PUT \
         --upload-file /home/<USER>/Downloads/R2026bU0.zip \
         "https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/"

    (Prompt dei comandi) Windows:

    curl --user <USER>:<PASSWORD> ^
         --header "X-Explode-Archive:true" ^
         --request PUT ^
         --upload-file "C:\Users\<USER>\Downloads\R2026bU0.zip" ^
         "https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/"

    Il comando curl include queste opzioni:

    • --user <USER>:<PASSWORD>: specificare il nome utente e la password Artifactory. In alternativa, se si utilizza un token di accesso, sostituire --user <USER>:<PASSWORD> con la seguente ulteriore intestazione: --header "Authorization: Bearer <TOKEN>"

    • --header "X-Explode-Archive:true": specificare X-Explode-Archive:true nell'intestazione della richiesta per decomprimere la cartella dopo averla caricata.

    • --request PUT: utilizzare una richiesta PUT in quanto il caricamento modifica il repository.

    • --upload-file ...: specificare il percorso del file ZIP.

    • https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/: specificare l'endpoint URL della cartella creata nel passaggio precedente.

Installazione dei prodotti e dei pacchetti di supporto da Artifactory

A computer receives an installation of MATLAB from a repository using mpm install and the JSON configuration file.

Per consentire agli utenti di installare i prodotti e i pacchetti di supporto dal repository Artifactory, fornire loro quanto segue:

  • Una copia del file di configurazione del repository (ad esempio, my_repo_config.json).

  • Una versione di mpm che sia compatibile con la loro piattaforma. Gli utenti possono scaricare la copia di mpm che è stata caricata nel repository oppure scaricare mpm dai server web di MathWorks seguendo le istruzioni riportate in Get MATLAB Package Manager (Ottieni MATLAB Package Manager).

Questo comando di esempio mpm install installa i prodotti dal repository Artifactory utilizzando un file di configurazione memorizzato in una posizione condivisa.

Linux o Mac:

./mpm install --repo-config=/usr/share/my_repo_config.json --release=R2026bU0 --destination=/home/<USER>/matlab --products=Simulink Deep_Learning_Toolbox_Model_for_ResNet-50_Network

Windows (eseguire come amministratore):

.\mpm.exe install --repo-config="Z:\share\my_repo_config.json" --release=R2026bU0 --destination="C:\Users\<USER>\matlab" --products=Simulink Deep_Learning_Toolbox_Model_for_ResNet-50_Network

Per scaricare un numero elevato di prodotti e pacchetti di supporto, utilizzare l'opzione --inputfile per specificarli in un file di input. Per i dettagli, vedere l'esempio Installazione dei prodotti e dei pacchetti di supporto dal repository Artifactory utilizzando un file di input nella pagina di riferimento mpm install.

Gli utenti possono anche utilizzare mpm in un Dockerfile per integrare MATLAB nelle pipeline CI/CD. Per un esempio, vedere Create MATLAB Container Image (Creare un'immagine del container MATLAB) su GitHub®.

Vedi anche

|

Argomenti