MATLABスタンドアロンアプリケ,ションの码头工人イメージへのパッケージ化
サポ,トされるプラットフォ,ム:Linux®のみ。
この例では,matlab®スタンドアロンパッケジをDocker®。
このオプションは,すべての依存関係を含む標準化された形式でのアプリケーションの配布,またはオーケストレーターでのバッチジョブの実行を行う開発者に最適です。HTTP / HTTPSエンドポイントを提供するマイクロサービスの码头工人イメージを作成するには,创建微服务Docker镜像(MATLAB编译器SDK)を参照してください。
前提条件
タミナルで”
码头工人
“と入力し,LinuxマシンにDockerがンストルされていることを確認します。”码头工人がインストールされていない場合は、Docker の Web サイトの指示に従って、Docker のインストールと設定を行うことができます。システムタミナルに次を入力して,Dockerンストルをテストします。
Docker run hello-world
来自Docker的你好!此消息显示您的安装似乎正在正常工作。
MATLAB运行时。その存在を確認するには,matlabコマンドプロンプトで関数
compiler.runtime.download
を実行します。マシンに既にンストラが存在する場合,この関数はその場所を返します。存在しない場合は,matlabのバ,ジョンおよび更新レベルが一致するMATLAB运行时。使用しているコンピューターがインターネットに接続していない場合,インターネットに接続しているコンピューターからMATLAB运行时。MATLAB运行时インストーラーをダウンロードした後,インターネットに接続していない方のコンピューターにそのインストーラーを移す必要があります。MathWorks Web。
//www.tatmou.com/下载188bet金宝搏products/compiler/matlab-runtime.html
MATLABでの関数の作成
mymagic
という名前のmatlab関数を作成し,mymagic.m
というファ@ @ル名で保存します。
函数Mymagic (x) y = magic(x);disp (y)
Matlabコマンドプロンプトでこの関数をテストします。
mymagic (5)
17 24 18 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
スタンドアロンアプリケ,ションの作成
関数compiler.build.standaloneApplication
を使用して,関数mymagic
をスタンドアロンアプリケ,ションに変換します。
res = compiler.build.standaloneApplication(“mymagic.m”,“TreatInputsAsNumeric”,真正的)
res =带有属性的结果:BuildType: 'standaloneApplication'文件:{3×1 cell}选项:[1×1 compiler.build.StandaloneApplicationOptions]
ビルドが完了すると,この関数はmymagicstandaloneApplication
という名前のフォルダ,を現在のディレクトリに作成し,スタンドアロンアプリケ,ションを保存します。Matlabコマンドプロンプトで返される结果
オブジェクトres
には,ビルドに関する情報が含まれています。
スタンドアロンアプリケ,ションの码头工人イメージへのパッケージ化
DockerOptions
オブジェクトの作成
Dockerメ,ジを作成する前に,関数compiler.package.DockerOptions
を使用してDockerOptions
オブジェクトを作成し,结果
オブジェクトres
と▪▪メ▪▪ジ名mymagic-standalone-app
を入力引数として渡します。関数compiler.package.DockerOptions
を使うと,Docker econpメジのパッケジ化をカスタマeconpズできます。
opts = compiler.package.DockerOptions(res,“ImageName”,“mymagic-standalone-app”)
ExecuteDockerBuild: on ImageName: 'mymagic-standalone-app' DockerContext: './mymagic-standalone-appdocker'
码头工人メ,ジの作成
関数compiler.package.docker
を使用してDocker econpメ,ジを作成し,结果
オブジェクトres
とDockerOptions
オブジェクト选择
を入力引数として渡します。
compiler.package.docker (res,“选项”选择)
生成运行时图像清洗MATLAB运行时安装程序位置。可能需要几分钟……复制MATLAB运行时安装程序。可能需要几分钟... ... ... ...成功构建6501fa2bc057成功标记mymagic-standalone-app:latest DOCKER CONTEXT LOCATION: /home/user/ matlab /work/mymagic-standalone-appdocker SAMPLE DOCKER RUN命令:DOCKER RUN——rm -e "DISPLAY=:0" -v /tmp/. x11 -unix:/tmp/。X11-unix mymagic-standalone-app
パッケ,ジ化が完了すると,この関数はmymagic-standalone-appdocker
という名前のフォルダ,を現在の作業ディレクトリに作成します。このフォルダはDockerコンテキストであり,“Dockerfile”が含まれています。関数compiler.package.docker
はDockerコンテキストの場所と,サンプルのDocker実行コマンドも返します。サンプルの码头工人実行コマンドを使用して,イメージが正しく実行されるかどうかをテストできます。
パッケ,ジ化の処理中に,MATLAB运行时に必要な部分が親码头工人イメージとしてパッケージ化され,スタンドアロンアプリケーションが子码头工人イメージとしてパッケージ化されます。
码头工人メ,ジのテスト
Linuxタミナルを開き,Dockerコンテキストのフォルダに移動します。Dockerメ,ジのリストにmymagic-standalone-app
Dockerメ,ジがあることを確認します。
$码头工人的图片 |
仓库标签图像ID CREATED SIZE mymagic-standalone-app latest 6501fa2bc057 23 seconds ago 1.03GB matlabruntime/r2022 bc6eb5ba4ae69 24 hours ago 1.03GB
mymagic-standalone-app
Docker econpメ,econpジがDocker econpメ,econpジのリストにあることを確認した後,econp入力引数5
を指定してサンプルの実行コマンドを実行します。
$docker运行——rm -e "DISPLAY=:0" -v /tmp/. x11 -unix:/tmp/. x11 -unix:/tmp/。X11-unix mymagic-stand - alone-app |
无协议指定out = 17 24 18 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
スタンドアロンアプリケーションはパッケージ化され,码头工人イメージとして実行できるようになりました。
メモ
プロットまたはグラフィックスを生成するアプリケーションを実行する際には,码头工人イメージを実行する前に,+
オプションを使用してxhost
プログラムを実行します。
xhost +
xhost
プログラムはX显示服务器へのアクセスを制御することにより,プロットとグラフィックスを表示できるようにします。+
オプションは,誰でもX显示服务器にアクセスできることを表しています。プロットやグラフィックスを生成しないアプリケ,ションを実行する前に,+
オプションを使用してxhost
プログラムを実行すると,[没有指定协议
]というメッセ,ジは表示されなくなります。
码头工人メ,ジの共有
Dockerメ,ジはさまざまな方法で共有できます。
イメージを码头工人の中央レジストリDockerHubにプッシュするか,プライベートレジストリにプッシュします。これが最も一般的なワ,クフロ,です。
。このワ,クフロ,は,ただ,にテストを行う場合に適しています。
イメージを码头工人の中央レジストリまたはプライベートレジストリにプッシュする方法の詳細については,码头工人のドキュメンテーションを参照してください。
码头工人@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
码头工人イメージを焦油アーカイブとして保存するには,Linuxターミナルを開き,码头工人コンテキストのフォルダーに移動して次を入力します。
$Docker保存mymagic-standalone-app -o mymagic-standalone-app.tar |
現在のフォルダ,にmymagic-standalone-app.tar
という名前のファ@ @ルが作成されます。Tarballを他のユ,ザ,と共有する前に,修改文件权限
を使用して適切な権限を設定します。
Tarアカブからの码头工人メ,ジの読み込み
エンドユザのマシン上でtarballに含まれるメジを読み込み,実行します。
$Docker加载——输入mymagic-standalone-app.tar |
メ,ジが読み込まれたことを確認します。
$码头工人的图片 |
码头工人メ,ジの実行
$xhost +$docker运行——rm -e "DISPLAY=:0" -v /tmp/. x11 -unix:/tmp/. x11 -unix:/tmp/。X11-unix mymagic-stand - alone-app |
参考
compiler.package.docker
|compiler.package.DockerOptions
|compiler.build.standaloneApplication
|compiler.runtime.download
関連するトピック
- 创建微服务Docker镜像(MATLAB编译器SDK)