Configurazione dell'installazione dal repository Artifactory
R2026bArtifactory®, 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:
Impostare la struttura delle cartelle del repository in Artifactory (passaggio una tantum).
Creare il file di configurazione JSON necessario per l'installazione dei prodotti e dei pacchetti di supporto dal repository (passaggio una tantum).
Scaricare i prodotti e i pacchetti di supporto da MathWorks utilizzando
mpm download.Caricare i prodotti nel repository Artifactory della propria organizzazione.

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.

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

Impostare il repository Artifactory utilizzato per memorizzare i prodotti e i pacchetti di supporto di MathWorks.
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-repoNella cartella di livello superiore del repository Artifactory, creare una sottocartella denominata
MathWorksper 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 cartellaMathWorks(ad esempio,R20XXaU0,R20XXaU1e 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)

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.
Creare un file JSON. Ad esempio:
my_repo_config.json.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}" } } ] }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 inrepository_layoutdefinisce 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:Se si installano prodotti e pacchetti di supporto per... "url": "https://my-artifactory-instance/my-repo", ... "repository_layout": { "mathworks_products": "MathWorks" }, ...R2026bU0,mpmrecupera 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 ambienteARTIFACTORY_ACCESS_TOKEN. Seguire la procedura della propria organizzazione per l'impostazione delle variabili di ambiente. Sintassi di esempio:ARTIFACTORY_ACCESS_TOKEN=abc123xyz456Quindi, 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.
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

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.
Acquisire la versione più recente di
mpmseguendo le istruzioni riportate in Get MATLAB Package Manager (Ottieni MATLAB Package Manager).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.mpmscarica 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_NetworkWindows:
.\mpm.exe download --release=R2026bU0 --destination=C:\Users\<USER>\Downloads\R2026bU0 --platforms=glnxa64 win64 maca64 --products=Simulink Deep_Learning_Toolbox_Model_for_ResNet-50_NetworkPer scaricare un numero elevato di prodotti e pacchetti di supporto, utilizzare l'opzione
--inputfileper 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 riferimentompm download.
La cartella R2026bU0 ha questa struttura:
R2026bU0/
archives/
mpm/
ProductFilesInfo.xmlLa 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 dimpm, una per ciascuna piattaforma specificata nell'opzione--platformsdimpm. Gli utenti possono installare i prodotti e i pacchetti di supporto utilizzando queste versioni dimpm, come mostrato in questa struttura di esempio:mpm/ glnxa64/ mpm maca64/ mpm win64/ mpm.exeProductFilesInfo.xml: file di metadati contenente le informazioni sui prodotti e sui pacchetti di supporto.
Caricamento dei prodotti su Artifactory

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.
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) otar(Windows) per comprimere il contenuto in un file ZIP nella cartella principaleDownloads.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.xmlNella cartella
MathWorksdel 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 comandocurlper 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
curlinclude 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 richiestaPUTin 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, doveR20XXyè il nome della release (ad esempio,R2026b) eUnè il numero di release dell'aggiornamento (ad esempio,U0,U1e così via).
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
curlinclude 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": specificareX-Explode-Archive:truenell'intestazione della richiesta per decomprimere la cartella dopo averla caricata.--request PUT: utilizzare una richiestaPUTin 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

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
mpmche sia compatibile con la loro piattaforma. Gli utenti possono scaricare la copia dimpmche è stata caricata nel repository oppure scaricarempmdai 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_NetworkWindows (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_NetworkPer 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®.