メインコンテンツ

Artifactory リポジトリからのインストールの構成

R2026b

JFrog® が公開している Artifactory® は、バージョン管理、アクセス制御、CI/CD 統合をサポートするアーティファクト リポジトリ マネージャーです。コマンド ライン ツールの MATLAB® パッケージ マネージャー (mpm) を使用すると、ユーザーは組織の Artifactory リポジトリから MathWorks® 製品とサポート パッケージをダウンロードしてインストールできます。このトピックでは、MathWorks 製品とサポート パッケージを対象として、組織の Artifactory リポジトリからのインストールを構成する方法を説明します。

制限

オフライン環境で mpm を使うと、サードパーティ パッケージを含むサポート パッケージは Artifactory からインストールできません。インストール時に mpm は Artifactory からサードパーティ パッケージを取得する代わりに、ベンダーのサイトからサードパーティ パッケージをダウンロードしようとします。ベンダーのサイトにアクセスできない場合は、mpm はエラーを発行します。サードパーティ パッケージが含まれるサポート パッケージを Artifactory の外部からインストールするには、オフライン コンピューターへのサポート パッケージのインストールを参照してください。

インストール構成のワークフロー

組織の Artifactory リポジトリから MathWorks 製品とサポート パッケージのインストールを構成するには、次のようにします。

  1. Artifactory のリポジトリ フォルダー構造を設定します (1 回限りの手順)。

  2. リポジトリから製品とサポート パッケージをインストールするために必要な JSON 構成ファイルを作成します (1 回限りの手順)。

  3. mpm download を使用して、MathWorks から製品とサポート パッケージをダウンロードします。

  4. 製品を組織の Artifactory リポジトリにアップロードします。

Steps for configuring installation from your organization's repository

MathWorks 製品とサポート パッケージの新しいリリース、またはアップデート リリースごとに、上記の手順 3 と 4 を繰り返します。

これで、ユーザーは mpm install と構成ファイルを使用して、リポジトリから製品をインストールできるようになります。

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

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

An Artifactory repository with a folder hierarchy

MathWorks 製品とサポート パッケージを保存するために使用する Artifactory リポジトリを設定します。

  1. Artifactory で、新しいリポジトリを作成するか、既存のリポジトリを再利用します。いずれの場合も、リポジトリのタイプは [汎用] に設定する必要があります。サンプル リポジトリ URL:

    https://artifactory.example.com/artifactory/my-repo
  2. Artifactory リポジトリの最上位フォルダーに、MathWorks リリースを保存するための MathWorks という名前のサブフォルダーを作成します。

    MathWorks/

    後続の手順で MathWorks から製品とサポート パッケージのリリースをダウンロードしたら、それらのリリースを MathWorks サブフォルダーにアップロードします。各リリースおよびアップデートは、MathWorks フォルダーの下にある個別のサブフォルダー (例: R20XXaU0、R20XXaU1 など) に保存されます。このフォルダー構造は、複数のリリースとアップデートがアップロードされたリポジトリを示しています。

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

リポジトリ構成ファイルの作成 (1 回限りの手順)

A JSON configuration file

ユーザーが製品とサポート パッケージをインストールできるようにする JSON 構成ファイルを作成します。このファイルには、インストールに必要なリポジトリに関する情報が含まれています。

  1. JSON ファイルを作成します。たとえば、my_repo_config.json です。

  2. 次の内容を 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. リポジトリに合わせて 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 ファイル内でアクセス トークンを直接指定すると、機密性の高い資格情報がプレーン テキストで公開されることになります。構成ファイル内で資格情報が公開されるリスクを減らすには、アクセス トークンを環境変数として指定します。

  4. JSON ファイルは、共有ドライブなど、ユーザーがアクセスできる場所に保存します。ユーザーが Artifactory リポジトリからファイルをダウンロードできる場合は、ファイルを Artifactory リポジトリにアップロードすることを検討してください。

MathWorks からの製品のダウンロード

A folder being downloaded from a MathWorks web server

Artifactory にアップロードする特定のリリースの製品とサポート パッケージをダウンロードするには、mpm を使用します。ISO や DMG イメージなど、他のソースからダウンロードした MathWorks ソフトウェアはアップロードできません。

  1. MATLAB パッケージ マネージャーの入手の手順に従って、mpm の最新バージョンを取得します。

  2. 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_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

    多数の製品とサポート パッケージをダウンロードするには、--inputfile オプションを使用して、入力ファイルで製品を指定します。詳細については、mpm download リファレンス ページの入力ファイルを使用した製品のダウンロードの例を参照してください。

R2026bU0 フォルダーは、次の構造になっています。

R2026bU0/
  archives/
  mpm/
  ProductFilesInfo.xml

R2026bU0 フォルダーには、次のファイルとサブフォルダーが含まれています。

  • archives — ダウンロードした製品とサポート パッケージを含むサブフォルダー。

  • mpm — mpm の --platforms オプションで指定した各プラットフォーム向けにダウンロードされた mpm のバージョンを含むサブフォルダー。次のサンプル構造に示すように、ユーザーはこれらの mpm バージョンを使用して製品とサポート パッケージをインストールできます。

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

  • ProductFilesInfo.xml — 製品とサポート パッケージに関する情報を含むメタデータ ファイル。

Artifactory への製品のアップロード

A folder being uploaded to an Artifactory repo

前のセクションでダウンロードした製品とサポート パッケージを Artifactory にアップロードします。Artifactory ではフォルダーのアップロードがサポートされていないため、ダウンロードしたフォルダーを最初に ZIP ファイルに圧縮する必要があります。圧縮およびアップロードを行う前に、このフォルダーの構造や内容を変更しないでください。

  1. 任意のツールを使用して、ダウンロードしたリリース フォルダーを 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.xml
  2. Artifactory リポジトリ内の 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 など) を示します。

  3. 上記で 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 からの製品とサポート パッケージのインストール

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

ユーザーが 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_Network

Windows (管理者として実行):

.\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 を参照してください。

参考

|

トピック