基本原理
🔹 容器 vs 镜像
镜像(Image):静态模板,里面有你的代码、依赖、配置
容器(Container):镜像的一个运行实例,包含当前文件系统的快照和运行状态
⚠️ 容器启动后,它里面的文件系统是“容器内的副本”,不会自动同步宿主机的文件更新
因此,修改Dockerfile或者原始代码文件之后应该重新建立container。
docker build -t my_image_name . 或 docker build -t my_image_name -f Dockerfile .
docker run --gpus all --name my_container_name -it my_image_name /bin/bash
数据集的挂载
Dockerfile中的CP是将原文件拷贝到Docker container里面,这样修改container中的内容也不会影响本地文件。而且由于代码文件较小,拷贝相对快速。而对于本地数据集文件就不行了,适合采取挂载的方法:
docker run --gpus all --name my_container_name --mount type=bind,source=/home/data,target=/data -it my_image_name /bin/bash
这里的/data可以是原本不存在的文件夹。
注:正确写法应该是把所有选项放在镜像名(my_image_name )前
1606

被折叠的 条评论
为什么被折叠?



