Artifactory リポジトリからのインストールの構成
R2026bJFrog® が公開している Artifactory® は、バージョン管理、アクセス制御、CI/CD 統合をサポートするアーティファクト リポジトリ マネージャーです。コマンド ライン ツールの MATLAB® パッケージ マネージャー (mpm) を使用すると、ユーザーは組織の Artifactory リポジトリから MathWorks® 製品とサポート パッケージをダウンロードしてインストールできます。このトピックでは、MathWorks 製品とサポート パッケージを対象として、組織の Artifactory リポジトリからのインストールを構成する方法を説明します。
制限
オフライン環境で mpm を使うと、サードパーティ パッケージを含むサポート パッケージは Artifactory からインストールできません。インストール時に mpm は Artifactory からサードパーティ パッケージを取得する代わりに、ベンダーのサイトからサードパーティ パッケージをダウンロードしようとします。ベンダーのサイトにアクセスできない場合は、mpm はエラーを発行します。サードパーティ パッケージが含まれるサポート パッケージを Artifactory の外部からインストールするには、オフライン コンピューターへのサポート パッケージのインストールを参照してください。
インストール構成のワークフロー
組織の Artifactory リポジトリから MathWorks 製品とサポート パッケージのインストールを構成するには、次のようにします。
Artifactory のリポジトリ フォルダー構造を設定します (1 回限りの手順)。
リポジトリから製品とサポート パッケージをインストールするために必要な JSON 構成ファイルを作成します (1 回限りの手順)。
mpm downloadを使用して、MathWorks から製品とサポート パッケージをダウンロードします。製品を組織の Artifactory リポジトリにアップロードします。

MathWorks 製品とサポート パッケージの新しいリリース、またはアップデート リリースごとに、上記の手順 3 と 4 を繰り返します。
これで、ユーザーは mpm install と構成ファイルを使用して、リポジトリから製品をインストールできるようになります。

リポジトリのフォルダー構造の設定 (1 回限りの手順)

MathWorks 製品とサポート パッケージを保存するために使用する Artifactory リポジトリを設定します。
Artifactory で、新しいリポジトリを作成するか、既存のリポジトリを再利用します。いずれの場合も、リポジトリのタイプは [汎用] に設定する必要があります。サンプル リポジトリ URL:
https://artifactory.example.com/artifactory/my-repoArtifactory リポジトリの最上位フォルダーに、MathWorks リリースを保存するための
MathWorksという名前のサブフォルダーを作成します。MathWorks/後続の手順で MathWorks から製品とサポート パッケージのリリースをダウンロードしたら、それらのリリースを
MathWorksサブフォルダーにアップロードします。各リリースおよびアップデートは、MathWorksフォルダーの下にある個別のサブフォルダー (例:R20XXaU0、R20XXaU1など) に保存されます。このフォルダー構造は、複数のリリースとアップデートがアップロードされたリポジトリを示しています。MathWorks/ R20XXaU0/ R20XXaU1/ R20XXaU2/ ... R20XXbU0/ R20XXbU1/ R20XXbU2/ ...
リポジトリ構成ファイルの作成 (1 回限りの手順)

ユーザーが製品とサポート パッケージをインストールできるようにする JSON 構成ファイルを作成します。このファイルには、インストールに必要なリポジトリに関する情報が含まれています。
JSON ファイルを作成します。たとえば、
my_repo_config.jsonです。次の内容を 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}" } } ] }リポジトリに合わせて JSON ファイルのフィールドを変更します。
"name"— Artifactory リポジトリの名前。"url"— Artifactory リポジトリの URL。"type"— リポジトリのタイプ。現在、サポートされているリポジトリ タイプは"artifactory"のみです。"repository_layout"— Artifactory リポジトリのフォルダー レイアウト。repository_layout内の各サブフィールドは、インストール可能な MathWorks ソフトウェアを保存するサブフォルダーを定義します。サポートされているサブフィールド:"mathworks_products"— MathWorks 製品とサポート パッケージのリリースを含むサブフォルダーの名前。たとえば、構成ファイルに次のフィールド値が含まれているとします。... "url": "https://my-artifactory-instance/my-repo", ... "repository_layout": { "mathworks_products": "MathWorks" }, ...R2026bU0用の製品とサポート パッケージをインストールする場合、mpmは次の URL から製品とサポート パッケージを取得します。https://my-artifactory-instance/my-repo/MathWorks/R2026bU0
"auth"— リポジトリにアクセスするための認証の詳細。サポートされているサブフィールド:"type"— 認証タイプ。現在、サポートされているタイプは"token"のみです。"access_token"— リポジトリにアクセスするユーザーを認証するために使用するトークン。IT 管理者からアクセス トークンを取得した後、そのトークンをARTIFACTORY_ACCESS_TOKEN環境変数に設定します。環境変数の設定については、組織の手順に従ってください。サンプル構文:ARTIFACTORY_ACCESS_TOKEN=abc123xyz456次に、JSON ファイル内の
access_tokenフィールドで、次の構文を使用して環境変数名を指定します。"access_token": "${ARTIFACTORY_ACCESS_TOKEN}"または、JSON ファイル内でアクセス トークンを直接指定することもできます。以下に例を示します。
"access_token": "abc123xyz456"セキュリティ上の考慮事項: JSON ファイル内でアクセス トークンを直接指定すると、機密性の高い資格情報がプレーン テキストで公開されることになります。構成ファイル内で資格情報が公開されるリスクを減らすには、アクセス トークンを環境変数として指定します。
JSON ファイルは、共有ドライブなど、ユーザーがアクセスできる場所に保存します。ユーザーが Artifactory リポジトリからファイルをダウンロードできる場合は、ファイルを Artifactory リポジトリにアップロードすることを検討してください。
MathWorks からの製品のダウンロード

Artifactory にアップロードする特定のリリースの製品とサポート パッケージをダウンロードするには、mpm を使用します。ISO や DMG イメージなど、他のソースからダウンロードした MathWorks ソフトウェアはアップロードできません。
MATLAB パッケージ マネージャーの入手の手順に従って、
mpmの最新バージョンを取得します。mpm downloadを使用して製品をダウンロードします。たとえば、Linux® (glnxa64)、Windows® (win64)、および Mac (maca64) プラットフォームで使用するために、Simulink® と Deep Learning Toolbox™ Model for ResNet-50 Network の初回リリース R2026b (アップデート 0) をダウンロードします。<USER>は、使用しているコンピューターのユーザー名に置き換えてください。mpmにより、必要な製品である MATLAB と Deep Learning Toolbox もダウンロードされます。Linux または 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_Network多数の製品とサポート パッケージをダウンロードするには、
--inputfileオプションを使用して、入力ファイルで製品を指定します。詳細については、mpm downloadリファレンス ページの入力ファイルを使用した製品のダウンロードの例を参照してください。
R2026bU0 フォルダーは、次の構造になっています。
R2026bU0/
archives/
mpm/
ProductFilesInfo.xmlR2026bU0 フォルダーには、次のファイルとサブフォルダーが含まれています。
archives— ダウンロードした製品とサポート パッケージを含むサブフォルダー。mpm—mpmの--platformsオプションで指定した各プラットフォーム向けにダウンロードされたmpmのバージョンを含むサブフォルダー。次のサンプル構造に示すように、ユーザーはこれらのmpmバージョンを使用して製品とサポート パッケージをインストールできます。mpm/ glnxa64/ mpm maca64/ mpm win64/ mpm.exeProductFilesInfo.xml— 製品とサポート パッケージに関する情報を含むメタデータ ファイル。
Artifactory への製品のアップロード

前のセクションでダウンロードした製品とサポート パッケージを Artifactory にアップロードします。Artifactory ではフォルダーのアップロードがサポートされていないため、ダウンロードしたフォルダーを最初に ZIP ファイルに圧縮する必要があります。圧縮およびアップロードを行う前に、このフォルダーの構造や内容を変更しないでください。
任意のツールを使用して、ダウンロードしたリリース フォルダーを ZIP ファイルに圧縮します。たとえば、ダウンロードしたフォルダーに移動し、
zip(Linux または Mac) またはtar(Windows) を使用して、親フォルダーであるDownloadsに ZIP ファイルとして内容を圧縮します。Linux または Mac:
cd /home/<USER>/Downloads/R2026bU0 zip -r ../R2026bU0.zip ./* cd ..Windows (コマンド プロンプト):
cd C:\Users\<USER>\Downloads\R2026bU0 tar -a -c -f ..\R2026bU0.zip * cd ..ダウンロードした製品とサポート パッケージの数によっては、この処理に数分かかる場合があります。圧縮された ZIP ファイルには、この例に示すサブフォルダーおよびファイルが含まれている必要があります。
R2026bU0.zip archives/ mpm/ ProductFilesInfo.xmlArtifactory リポジトリ内の
MathWorksフォルダーに、ZIP ファイルをアップロードするためのサブフォルダーを作成します。このサブフォルダーを作成するには、JFrog CLI または任意のツールを使用します。以下の例は、HTTPS Web リクエストを行うコマンド ライン ツールであるcurlを使用してフォルダーを作成する方法を示しています。Linux または Mac:
curl --user <USER>:<PASSWORD> \ --request PUT \ "https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/"Windows (コマンド プロンプト):
curl --user <USER>:<PASSWORD> ^ --request PUT ^ "https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/"curlコマンドには、次のオプションが含まれています。--user <USER>:<PASSWORD>— ユーザー名と Artifactory パスワードを指定します。または、アクセス トークンを使用している場合は、--user <USER>:<PASSWORD>を追加ヘッダー--header "Authorization: Bearer <TOKEN>"に置き換えます。--request PUT— アップロードによってリポジトリが変更されるため、PUTリクエストを使用します。https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/— Artifactory 上に表示されるフォルダーの URL エンドポイントを指定します。URL の末尾にはスラッシュを含めてください。次の URL 形式を使用します。https://my-artifactory-instance/my-repo/MathWorks/R20XXyUn/https://my-artifactory-instance/my-repo/は、リポジトリ構成ファイルの"url"フィールドで指定された Artifactory リポジトリの URL です。MathWorks/は、リポジトリ構成ファイルの"repository_layout"フィールド内にある"mathworks_products"サブフィールドで指定された、MathWorks 製品とサポート パッケージのリリースを保存するサブフォルダーです。R20XXyUn/はリリース フォルダーで、R20XXyはリリース名 (例:R2026b)、Unはアップデート リリース番号 (例:U0、U1など) を示します。
上記で Artifactory リポジトリ内に作成した製品リリース フォルダーに、ZIP ファイルをアップロードします。JFrog CLI または任意のツールを使用します。以下の例では、
curlを使用して ZIP ファイルをアップロードする方法を示します。Linux または 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/"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/"curlコマンドには、次のオプションが含まれています。--user <USER>:<PASSWORD>— ユーザー名と Artifactory パスワードを指定します。または、アクセス トークンを使用している場合は、--user <USER>:<PASSWORD>を追加ヘッダー--header "Authorization: Bearer <TOKEN>"に置き換えます。--header "X-Explode-Archive:true"— アップロード後にフォルダーを解凍するには、リクエスト ヘッダーでX-Explode-Archive:trueを指定します。--request PUT— アップロードによってリポジトリが変更されるため、PUTリクエストを使用します。--upload-file ...— ZIP ファイルへのパスを指定します。https://my-artifactory-instance/my-repo/MathWorks/R2026bU0/— 前の手順で作成したフォルダーの URL エンドポイントを指定します。
Artifactory からの製品とサポート パッケージのインストール

ユーザーが Artifactory リポジトリから製品とサポート パッケージをインストールできるように、以下を提供します。
リポジトリ構成ファイルのコピー (例:
my_repo_config.json)。ユーザーのプラットフォームと互換性のある
mpmのバージョン。ユーザーは、リポジトリにアップロードされたmpmのコピーをダウンロードするか、MATLAB パッケージ マネージャーの入手の手順に従って MathWorks Web サーバーからmpmをダウンロードできます。
次の mpm install サンプル コマンドは、共有場所に保存された構成ファイルを使用して、Artifactory リポジトリから製品をインストールします。
Linux または 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 (管理者として実行):
.\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多数の製品とサポート パッケージをインストールするには、--inputfile オプションを使用して、入力ファイルでそれらを指定します。詳細については、mpm install リファレンス ページの入力ファイルを使用した、Artifactory リポジトリからの製品とサポート パッケージのインストールの例を参照してください。
ユーザーは、Dockerfile 内で mpm を使用して、MATLAB を CI/CD パイプラインに統合することもできます。例については、GitHub® の Create MATLAB Container Image を参照してください。