今天在制作Django+Uwsgi的镜像,里面有tensorflow基于GPU的服务,主要分为以下步骤:
1、安装Docker,参见Docker官方文档
2、安装nvidia-docker ,参见 GitHub_nvidia-docker
3、拉取tensorflow-gpu的docker
4、把项目放进docker,并执行uwsgi
今天遇到了2个问题,一个是使用pip自动安装requirement.txt的时候,有依赖包冲突,需要卸载旧的安装新的,但是由于缓存的原因,每次遇到这种情况就报错,所以我就把冲突的包全部删除然后就好了
第二个比较麻烦,每次打包完镜像,执行时运行一下就退出了,不能一直执行。找了很多,终于参照了uwsgi后台执行
我的uwsig的ini文件中,设置了
daemonize = /tmp/ocr_8010.log #这行不能有
这个会使项目自动进入后台,docker就退出了,要 把这行注释了再打docker,就不会出现这种问题了。