您好,我想在容器中运行烧瓶应用程序,但由于第三方模块而卡住了。 (我正在使用PyCharm)
这是我的docker文件:
FROM python:3-alpine
MAINTAINER foo
COPY app /app
WORKDIR /app
RUN pip install -r requirements.txt
CMD ["python3", "gateway.py"]
我通过以下命令运行容器:
docker run --name mei_converter -p 5000:5000 mei_converter:latest
并收到此消息:
ModuleNotFoundError: No module named 'verovio'
我已经修复了依赖关系,以便可以在本地计算机上运行
Terminal: python3 gateway.py
['/usr/local/lib/python3.7/site-packages',
'/Users/max/PycharmProjects/flaskmicroservice/app',
'/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python37.zip',
'/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7',
'/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-
dynload', '/Users/max/Library/Python/3.7/lib/python/site-packages',
'/usr/local/lib/python3.7/site-packages', '/usr/local/lib/python3.7/site-packages/verovio-
2.0.0-py3.7-macosx-10.13-x86_64.egg']
* Serving Flask app "gateway" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
这很好
我还检查了PyCharm中的项目解释器,并找到了已安装的软件包。
也许有关此第三方软件包的一些信息可能会有所帮助: 这是这些人https://www.verovio.org/python.xhtml进行音乐编码的转换器 而不是“本地python”(需要SWIG) 顺便说一句..我来自Java世界,实际上对python零经验。我正在将该烧瓶应用程序用作我的Spring Boot应用程序的微服务。 我将不胜感激!
答案 0 :(得分:0)
您需要在容器中执行与在本地主机中相同的操作。也就是说,您需要向Dockerfile添加步骤以编译verovio并在容器中使用它。