1. 安装 NVIDIA Container Toolkit:
按照英伟达官网Instruction就好了.大概为以下几部:
- 安装Docker-CE
- 安装nvidia-docker2
2. 按照需求拉取你想要的cuda Docker镜像
我这里服务器版本是Ubuntu 18.04, CUDA版本为10.1,因此,拉取一个10.1-cudnn7-runtime-ubuntu18.04 就好了
docker pull nvidia/cuda:10.1-cudnn7-runtime-ubuntu18.04
3. 根据需求编写Dockerfile文件,创建适合自己的镜像
FROM nvidia/cuda:10.1-cudnn7-runtime-ubuntu18.04
RUN apt-get update
RUN apt-get install -y libsm6 libxrender1 libxext-dev unzip
RUN apt-get -y install python3
RUN apt-get -y install python3-pip
WORKDIR /app
ADD . /app
RUN pip3 install --trusted-host pypi.python.org -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
EXPOSE 8000
CMD ["uwsgi", "TorchServer8510/uwsgi_8510.ini"]
其中requirements.txt文件如下
cmake==3.17.3
Django==3.0.8
easydict==1.9
facenet-pytorch==2.2.9
future==0.18.2
h5py==2.10.0
matplotlib==3.2.1
numpy==1.19.1
onnx==1.7.0
opencv-python==4.2.0.34
Pillow==7.1.2
protobuf==3.13.0
scikit-learn==0.23.1
scipy==1.4.1
-f https://download.pytorch.org/whl/torch_stable.html
torch==1.5.0+cu101
-f https://download.pytorch.org/whl/torch_stable.html
torchvision==0.6.0+cu101
tqdm==4.46.1
urllib3==1.25.9
uWSGI==2.0.19.1
之后就可以开始创建镜像了
docker build -t facereco_v2 .
创建完成只有就可以运行一个容器
docker run -d -it -p 8515:8510 --gpus all facereco_v2