docker 里面跑训练。
最近在docker里面做训练,之前没有接触过docker 不知道怎么玩,弄了好久终于明白了一点点,总结了一下跑一个训练的大致流程。
1、首先从NVIDIA官网找一个自己需要的环境给他pull下来。https://hub.docker.com/r/nvidia/cuda。
base、runtime、devel三者区别。
2、docker 里面没有GPU 所以想要使用GPU必须 添加GPU的选项,否则跑gpu程序的时候会出现没有显卡驱动之类的错误。另外docker里面的内存很小,需要添加 --shm-size 的选项。
docker run -ti -v /data/:/data --gpus all --shm-size 10g 3bda90e46a7d (3bda90e46a7d 可以通过 docker images查看,这是镜像id。)
3、配置好环境必须进行commit
docker ps –l查看 containerID
docker commit containerID xxx/xxx:tag