部署triton
准备docker镜像
docker pull nvcr.io/nvidia/tritonserver:23.12-py3
启动triton-server
docker run -d --name triton-server --shm-size=1g --ulimit memlock=-1 --ulimit stack=67108864 --gpus 'device=1' --rm -p 8000:8000 -p 8001:8001 -p 8002:8002 -v /disk/triton_models:/models nvcr.io/nvidia/tritonserver:23.12-py3 tritonserver --model-repository=/models --model-control-mode=poll --exit-on-error=false --log-verbose 1
--gpus 'device=1' 代表使用显卡1(第二张显卡),triton并不会独占显卡,启动后,显卡仍然可以进行训练和其他任务(triton加载模型越多,显存占用越多,不需要的模型可以挪出文件夹)
-v /disk/triton_models:/models 代表你的模型文件夹都要放在物理机的/disk/triton_models文件夹中(这个文件夹会mount到容器内部的/models里)
-p 8010:8000 -p 8011:8001 -p 8012:8002 代表,triton服务http端口是8010,grpc端口是8011
(--model-control-mode=poll 文件夹任意内容的改变都会被triton监听,自动加载最新内容)
--exit-on-error=false 这个配置可以让triton加载模型失败时,仍然可以正常启动
--log-verbose 1 详细日志,方便debug)
操作triton-server
这个docker容器的名字叫triton-server
docker ps 可以查看
docker stop triton-server 可以关闭服务
docker exec -it triton-server bash 可以进入容器内部