python - Python Matlab 引擎在 Docker 中的使用
问题描述
我有一个 python 脚本,它使用 matlab.engine() 在其中执行 matlab 脚本。这适用于我的机器,但我无法对其进行 dockerize。
dockerfile 将需要两个图像 -Matlab 和 Python。Matlab 需要使用许可文件进行初始化,然后执行 Matlab 文件夹中的 python 设置脚本。之后,python 脚本将能够访问 Matlab。
感谢您对创建 Dockerfile 的任何帮助。或者任何导致我在哪里可以找到这样的东西。谢谢..
试过这个:
Python代码:
import matlab.engine
from flask import Flask
@app.route("/matlab")
def matlab_execute():
eng = matlab.engine.start_matlab()
eng.myscript(nargout=0)
return "success"
if __name__ == "__main__":
app.run()
Dockerfile:
FROM mathworks/matlab:r2021a as matlab_image
WORKDIR /matlab
FROM python:3.8
COPY --from=matlab_image /matlab /
COPY myscript.m /
COPY py_script.py /
WORKDIR /
RUN pip install FLASK
CMD [ "python", "./py_script.py" ]
但是当我运行容器时,我得到“没有名为 matlab 的模块”。如何将 matlab 凭据传递给此?
解决方案
推荐阅读
- windows - 删除 Windows 16 服务器上旧日志文件的有效方法?
- excel - 如何使用动态生成的参考(月份名称)和相邻列的值访问命名范围中的值?
- spring-boot - 我可以使用 hystrix 再次调用失败的请求吗?
- javascript - 在 D3.js 中,如何在更改路径元素的属性后附加文本元素?
- sql - SQL 帮助插入唯一值
- javascript - 如何添加 JS 函数以使包括 INPUT 字段在内的所有数字都显示 THOUSAND SEPARATOR?
- xamarin - Xamarin 异步构造函数
- android - 具有不同签名的不同应用程序可以共享同一个客户经理帐户吗?
- c# - 我应该在无限游戏中使用 SceneManager.LoadScene("Scene Name") 吗?
- python - Python list 和 int 仅在调试时有效