Docker类似虚拟机,配置cuda+TF开发环境时只要确保服务器的nvdia驱动能够支持所需要的cuda版本。

docker image 是一个操作系统镜像,TF提供了各种版本的image非常方便,在使用时可以根据一个image创建虚拟环境,虚拟环境称为container(也是一个操作系统)

首先确保服务器已经安装docker,以及足够高版本的nvdia驱动

docker 常用命令:

查看所有image docker images

下载image docker pull <IMAGE NAME>

查看所有container docker ps或者docker ps –a

基于image实例化一个container,举例: docker run –itd -v /opt/maming/Test/:/code -w /code –name dev_maming -p 1989:22 –runtime=nvidia aminehy/ai-lab:py3-opencv-pytorch-skvideo-ffmpeg-alignment

-v 将服务器中目录映射到container目录,用于共享文件等 注意:该目录具有和docker一样的权限,可能不能更改,需要手动更改权限 更改目录权限:sudo chown -R maming:root /opt/maming/shared

-w container的起始目录

–name container的名字

-p 将该container映射到服务器端口,并与22(SSH)关联监听 例如:1989为分配给container的端口 注意:需要sudo权限打开1989端口的防火墙

-i 保持STDIN开启

-t 分配一个伪终端

-d 在后台运行

–runtime=nvidia 可以使用gpu

最后加上image名字 例如:aminehy/ai-lab:py3-opencv-pytorch-skvideo-ffmpeg-alignment

进入已经实例化的container docker exec –it <CONTAINER NAME> bash (默认执行docker start <CONTAINER NAME>)

退出当前container exit

停止正在运行的container docker stop <CONTAINER NAME>

删除一个container docker rm <CONTAINER NAME>

启动一个container docker start <CONTAINER NAME> Linux查看文件夹权限:ls –l Linux 赋予文件夹权限:sudo chown -R maming:root /opt/maming/shared

可能需要重启container的ssh服务,请参考:https://blog.csdn.net/qq_38228254/article/details/78543840

查看某个(比如8001)端口是否占用:sudo netstat -nlp|grep 8001

建立kaldi-gpu container:docker run -itd -v /opt/maming/shared_kaldi/:/shared_kaldi -w /shared_kaldi –name maming_kaldi -p 1988:22 –runtime=nvidia kaldiasr/kaldi:gpu-latest

一条评论

kinglier进行回复 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注