Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为具有依赖项的python项目编写Dockerfile Caffe、OpenCV_Python_Docker - Fatal编程技术网

如何为具有依赖项的python项目编写Dockerfile Caffe、OpenCV

如何为具有依赖项的python项目编写Dockerfile Caffe、OpenCV,python,docker,Python,Docker,我如何使用大量依赖项(如Berkeley-Caffe和OpenCV)构建Docker映像 这是我的Dockerfile: FROM ubuntu:18.04 RUN apt-get update && apt-get install \ python-pip python-virtualenv tesseract-ocr poppler-utils RUN python -m virtualenv --python=/usr/bin/python /opt/venv #Ins

我如何使用大量依赖项(如
Berkeley-Caffe
OpenCV
)构建Docker映像

这是我的Dockerfile:

FROM ubuntu:18.04
RUN apt-get update && apt-get install \ python-pip python-virtualenv tesseract-ocr poppler-utils

RUN python -m virtualenv --python=/usr/bin/python /opt/venv

#Install dependencies:
COPY requirements.txt .
RUN . /opt/venv/bin/activate && pip install -r requirements.txt

#Install caffe -cpu only
#compile caffe localy 
#install all req of caffe
#run all make commands and also run make pycaffe

#set the python path

#Run
$ cd API
$ ../bin/gunicorn --pythonpath "/opt/venv/caffe/python" -b localhost:5000 app

您是否有在Docker之外构建额外依赖项的方法,可以将其转换为
运行
指令?或者这些东西是可以使用第三方APT存储库(或者类似Ubuntu PPA的东西)安装的吗?两个一般性的评论:你不需要在一个孤立的Docker容器中有一个虚拟环境,并且可以将
pip安装到“系统”python中;您的最后一个
gunicorn
命令需要在0.0.0.0上侦听,而不是
localhost
,否则将无法从容器外部访问该服务。请查看已存在的caffe docker映像this()和this()您可以从Docker中复制内容并在Docker文件中使用它们您是否有一个在Docker之外构建额外依赖项的方法,可以将其转换为
运行
指令?或者这些东西是可以使用第三方APT存储库(或者类似Ubuntu PPA的东西)安装的吗?两个一般性的评论:你不需要在一个孤立的Docker容器中有一个虚拟环境,并且可以将
pip安装到“系统”python中;您的最后一个
gunicorn
命令需要在0.0.0.0上侦听,而不是
localhost
,否则将无法从容器外部访问该服务。请查看已存在的caffe docker映像this()和this(),您可以从中复制内容并在dockerfile中使用它们