在Docker容器的Jupyter Notebook中安装OpenFace的方法咨询
两种场景的解决方案
场景1:在已部署OpenFace的Docker容器中添加Jupyter Notebook
如果你已经有一个运行着OpenFace的Docker容器,只需要在里面安装并启动Jupyter即可,步骤如下:
- 首先进入你的OpenFace容器(替换
<容器ID/名称>为实际值):docker exec -it <容器ID/名称> /bin/bash - 安装Jupyter Notebook(因为是Python2环境,用
pip而非pip3):pip install jupyter - (可选但推荐)设置Jupyter访问密码,避免直接暴露token:
按照提示输入并确认密码即可。jupyter notebook password - 启动Jupyter服务,允许外部访问(容器内绑定所有IP,映射端口到宿主机):
jupyter notebook --ip=0.0.0.0 --port=8888 --no-browser --allow-root - 在宿主机的浏览器中访问
http://localhost:8888,输入你设置的密码,就能进入Notebook环境了。此时直接在单元格里写import openface就能调用已部署好的OpenFace包。
场景2:在Python2版本的Jupyter Docker镜像中安装OpenFace
如果你是基于Python2的Jupyter镜像从头搭建,需要先安装OpenFace的所有依赖再编译安装,步骤如下:
- 先运行你的Python2 Jupyter镜像,进入交互式bash(替换
<镜像名称>为实际值):docker run -it -p 8888:8888 <镜像名称> /bin/bash - 安装系统层面的依赖(编译OpenFace需要的工具和库):
apt-get update && apt-get install -y build-essential cmake libopenblas-dev liblapack-dev libx11-dev libgtk-3-dev python-dev python-pip - 安装Python依赖包:
pip install numpy scipy matplotlib scikit-image scikit-learn ipython - 克隆OpenFace仓库并下载预训练模型:
git clone https://github.com/cmusatyalab/openface.git cd openface ./models/get-models.sh - 编译OpenFace:
mkdir build cd build cmake -D PYTHON_EXECUTABLE=/usr/bin/python2 .. make - 安装OpenFace的Python包:
pip install -e ../ - 退出bash环境(输入
exit),然后重启容器并启动Jupyter服务:docker run -it -p 8888:8888 <镜像名称> jupyter notebook --ip=0.0.0.0 --allow-root - 同样在宿主机浏览器访问
http://localhost:8888,进入Notebook后测试import openface,如果没有报错就说明安装成功啦!
小提醒:Python2已经停止官方维护了,如果后续有需求,建议尽量迁移到Python3版本的环境哦。
内容的提问来源于stack exchange,提问作者NBC
相关产品推荐
相关产品推荐

