How to build a Docker Image in Matlab with Additional Packages

9 ビュー (過去 30 日間)
Rahul Sivagaminathan
Rahul Sivagaminathan 2024 年 2 月 22 日
コメント済み: Kojiro Saito 2024 年 3 月 12 日
I have a function that works. I am able to dockerize it without adding additional packages, but when i add additional packages i get error messages.
mpsResults = compiler.build.productionServerArchive ('DockerFunction_ToTest_Reading_Inserting_Into_AWS.m')
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages',"postgresql-42.7.0.jar")
I have 2 questions - 1) What path does Matlab expect my JAR file to be in, it is in the current (pwd) director 2) How can i mention specific path in the above command ?
I tried the following variations of adding the Additional Package none worked -
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages','postgresql-42.7.0.jar')
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages','\\gcnms101.ds.givaudan.com\HomeDirL$\sivar\Documents\Rahul\ATOM 3\Mfiles New\ATOM 3 APIs\postgresql-42.7.1.jar')
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages','C:\Program Files\MATLAB\R2023a\java\jar\postgresql-42.7.0.jar')
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages','C:/Program Files/MATLAB/R2023a/java/jar/postgresql-42.7.0.jar')
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages',"./postgresql-42.7.0.jar")
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages',"postgresql-42.7.0.jar")
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages',"C:/Program Files/MATLAB/R2023a/java/jar/postgresql-42.7.0.jar")
compiler.package.microserviceDockerImage(mpsResults,'ImageName','dockertotestconnectiontoaws','AdditionalPackages',"C:/Rahul/postgresql-42.7.0.jar")

採用された回答

Kojiro Saito
Kojiro Saito 2024 年 2 月 23 日
You can add additional files with AdditionalFiles of compiler.build.ProductionServerArchiveOptions.
functionFile = 'DockerFunction_ToTest_Reading_Inserting_Into_AWS.m';
opts = compiler.build.ProductionServerArchiveOptions(functionFile, 'AdditionalFiles', 'postgresql-42.7.2.jar');
buildResults = compiler.build.productionServerArchive(opts);
compiler.package.microserviceDockerImage(buildResults);
  5 件のコメント
Rahul Sivagaminathan
Rahul Sivagaminathan 2024 年 3 月 7 日
Hi @Kojiro Saito I have one more question that my IT team wants to know. The dockerized image created by matlab can they run in a unix environment ? Or only in linux environment ? I am checking the help documents it seems Matlab create dockerized containers will only run on linux, windows and mac environments and not unix, is this correct ? Is there some workaround to make the containers run in a unix environment ?
Thanks for all your help and your time.
Kojiro Saito
Kojiro Saito 2024 年 3 月 12 日
MATLAB Docker container images are Ubuntu based and you can run them from Linux, Mac and Windows environment. It may run but we don't test on Unix.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMATLAB Compiler SDK についてさらに検索

製品


リリース

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by