nvidia-docker和docker命令类似
查看docker中包含的镜像文件
sudo docker images
查看docker中包含的容器
sudo docker ps -a
执行完以下命令后,会自动创建一个容器(不同的ID)
sudo nvidia-docker run -it -v /home/lufeng/Downloads/docker_env1/ 8feef0e83aed /bin/bash
nvidia-docker run --name paddle -it -v $PWD:/paddle registry.baidubce.com/paddlepaddle/paddle:2.2.1-gpu-cuda10.2-cudnn7 /bin/bash
sudo nvidia-docker run --name pytorch1.8 -it -v $PWD:/pytorch1.8 c7e20104018e /bin/bash
直接创建一个容器实例
sudo nvidia-docker run 8feef0e83aed
启动、关闭和删除容器
sudo docker start fb92f9747f7c # 启动
sudo docker stop fb92f9747f7c # 停止
sudo docker rm fb92f9747f7c # 删除
运行容器实例
sudo nvidia-docker exec -it fb92f9747f7c /bin/bash
启动或者创建之后,再运行容器,否则会出现
修改容器名字
sudo docker rename tender_dewdney pytorch171
从主机向docker容器中进行拷贝
sudo docker cp /home/lufeng/Downloads/torchvision-0.8.2-cp37-cp37m-linux_x86_64.whl fb92f9747f7c:/home/lufeng/Downloads/docker_env1/
删除单个镜像
sudo docker rmi 8feef0e83aed
删除所有镜像
sudo docker container prune
sudo chmod a+rwx /var/run/docker.sock
sudo chmod a+rwx /var/run/docker.pid
添加镜像成功
解压命令tar
解压在当前目录
tar -xzvf apache-tomcat-9.0.8.tar.gz
//-x 解压 -z代表gz格式 -v显示解压过程 -f使用归档名字必须有
2.解压在相对目录
tar -xzvf apache-tomcat-9.0.8.tar.gz -c /opt/
//-x 解压 -z代表gz格式 -v显示解压过程 -f使用归档名字必须有
利用docker搭建服务器:PyCharm+Docker:打造最舒适的深度学习炼丹炉_sinat_33384251的博客-CSDN博客_docker pycharm
将镜像 runoob/ubuntu:v3 生成 my_ubuntu_v3.tar 文档
docker save -o my_ubuntu_v3.tar lufeng/pytorch171
将自己搭建的环境容器commit成image
docker commit 8feef0e83aed lufeng/pytorch171
systemctl enable docker # 开机自动启动docker
systemctl start docker # 启动docker
systemctl restart docker # 重启dokcer
在以下路径修改映像文件名字
cd /var/lib/docker/containers/c9aa739a323cb340b88ca77e5ca35d40ce79576ab25373ac74da826cd9d330b3
vim config.v2.json
vim hostconfig.json
重启docker即可
通过以下指令查看容器状态
sudo docker inspect c9aa739a323c
查看当前目录下文件大小
du -sh *
查看磁盘文件大小
df -h
以ubuntu系统为例,本地镜像存储于目录/var/lib/docker文件夹下:
相关目录介绍如下。
/var/lib/docker/image/overlay2:存储镜像管理数据的目录,以使用的存储驱动命名,在我的ubuntu系统上,使用的驱动为overlay2。
其中repositories.json文件相当于SAP UI5里的manifest.json, 以及nodejs项目中的project.json:
/var/lib/docker/image/overlay2/distribution$: 从远端拉到本地的镜像相关元数据
/var/lib/docker/image/overlay2/imagedb:镜像数据库
/var/lib/docker/image/overlay2/imagedb/content:
每镜像层次的配置digest,也就是镜像ID。content文件夹里能看到一个sha256子文件夹。
进入该子文件夹,会看到一个以镜像ID命名的文件,我们用命令行docker images看到的镜像ID的前12位就来自这个文件。
/var/lib/docker/image/overlay2/layerdb: 镜像每个layer的元数据。
进入sha256,会看到layer的chain ID:
chain ID内的内容:
Docker镜像的目录存储讲解
Docker共享文件夹创建
如果要是想创建docker时直接有共享文件功能的话按下面步骤执行(类似本地机器与虚拟机的共享):
(1)在服务器上创建一个share文件
(2)执行后面命令:docker run -it -v /home/luxx/share:/home/shared dominiek/deep-base /bin/bash (划线前者是服务器上共享文件的路径,后者是docker共享文件所在路径)
编译paddle influence
cmake .. -DPYTHON_INCLUDE_DIR=/usr/local/python3.7.0/include/python3.7m/ -DPYTHON_LIBRARY=/usr/local/python3.7.0/lib/libpython3.so -DPY_VERSION=3 -DWITH_TESTING=OFF -DWITH_MKL=ON -DWITH_GPU=ON -DON_INFER=ON ..
sudo chmod a+rw /var/run/docker.pid
sudo chmod a+rw /var/run/docker.sock
带GPU的容器生成指令
sudo docker run -itd -v /home/lufeng/Documents/docker_env/:/home/shared --gpus all --name paddle_det_test15 -p 2224:22 -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all e31b45aeef36 /bin/bash