注意: Docker 可以共享使用显卡,即多个docker 可以共享使用同一块显卡
环境
- 硬件:Tesla T4 八张显卡
- 系统:Centos7.9 操作系统
- 服务器安装完操作系统,并安装完显卡驱动
请参照:https://www.cnblogs.com/lixinliang/p/14705315.html
docker 使用gpu 显卡方式
- 宿主机查看显卡,预计使用0号显卡
shell> nvidia-smi
- 创建启动docker 容器的脚本,要求为 32G内存,16核cpu,0号显卡
# cat leichuangxin.sh
PORT=101
USER=leichuangxin
PASS=`uuidgen`
if [[ ! -e /export/$USER ]]; then
mkdir /export/$USER/.ssh -p
else
echo "/export/$USER exist"
fi
docker run -itd --name $USER \
--restart always \
-v /export/$USER:/export \
-v /export/$USER/.ssh/:/root/.ssh/ \
--runtime=nvidia \
-e NVIDIA_VISIBLE_DEVICES=0 \ #显卡使用0号
-m 32G \ #内存分配 32G
--cpus 16 \ #cpu 核心数分配16c
-p ${PORT}22:22 \
-p ${PORT}23-${PORT}25:${PORT}23-${PORT}25 \
yz.harbor.moviebook.com/base/cuda:11.1.1-runtime-ubuntu18.04
#docker exec -it $USER bash -c "echo root:$PASS|chpasswd"
#docker exec -it $USER bash -c "sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config; /etc/init.d/ssh restart"
- 启动容器
bash leichuangxin.sh
- 查看容器显卡是否正常
shell> docker exec -it leichuangxin bash
证明已成功使用宿主机显卡