docker 命令

2021.10.21更新:
1、删除同名或者同IMAGEID的镜像:

docker rmi repository:TAG

2、同一个系统中,一个镜像打包成tar包之后,导入时,时间是原镜像生成的时间,并且不会生成新镜像。可以将这个tar包在其他系统导入,得到镜像,时间也是原镜像的建立时间,可以修改repository和tag,然后打包,再导入原系统,就可以得到新的tag了。
3、利用export导出的镜像不完整,例如,原来镜像里装好了显卡驱动,利用export导出之后,就没有。

1、修改docker镜像名字
在这里插入图片描述

docker tag IMAGEID(镜像id) REPOSITORY:TAG

例如对上图中 的vqa_yolo5镜像修改名字:
PERPOSITORY:写上自己想改的名字
TAG:写上版本号或者latest

docker tag d0a151a73903 vqa:latest

#删除容器前,需要停止运行容器
2、删除容器

docker rm 容器ID

删除镜像前需要停止这个镜像产生的容器,然后删除这个镜像产生的容器,才可以删除镜像。
3、删除镜像

docker rmi IMAGEID

4、启动容器

docker start 容器名或者容器id

5、停止容器

docker stop 容器名或者容器id

6、导入导出:

注:

   导出镜像 :docker  save -o  路径/文件名  镜像名:镜像tag
   导入镜像: docker  load  -i 文件名
   导出容器:docker export   -o  文件名  容器id
   导入容器:docker  import   文件名  -自定义镜像名:镜像tag
将容器导出成为镜像:
docker commit -a "镜像作者" -m "提交说明" 容器名 生成镜像的名字:tag

推荐使用save和load,一般不会出问题
7、创建容器:
如果不指定端口,宿主机和容器无法通信,
比如容器中的服务端口为80,ip为172.12.1.12,映射到宿主机8000端口,宿主机ip为:192.168.43.248
如果映射了端口就可以,用192.168.43.248:8000来访问容器中172.12.1.12:80的服务。

注意1:-p端口参数在-v挂在路径的前边,否则会出错。
注意2:-p x1:x1 -p x2:x2 ...如果需要映射多个端口,可以写多个-p参数进行设置
docker run -itd --name 容器名 -e LANG="en_US.UTF-8" -p 8000:80  -v (挂在硬盘)宿主机路径:容器路径  镜像名:版本号 /bin/bash
#例子:
docker run -itd --name my_container -e LANG="en_US.UTF-8" -p 8000:80 -v /APP/iMAT/zhuliagnqi-ghq:/temp my_images:v1 /bin/bash

7.1如果要创建gpu可以用的容器,需要指定runtime参数,命令如下:

docker run -itd --gpus all -e LANG="en_US.UTF-8"  --name=lqzhu_con_gpu  --runtime=nvidia -v C:/zlq:/temp -p 9970:9970 lqzhu_gpu:v1.0 /bin/bash

7.2 如果将来要用来跑深度学习代码,请添加以下参数,--shm 64G,设置共享内存的大小,可以在加载数据的时候,开启多线程,提高模型的训练速度。生成容器的命令如下:

docker run -itd --gpus all  -e  LANG="en_US.UTF-8"  --name 容器名 --runtime=nvidia  -p 8000:80  --shm-size  64G  -v (挂在硬盘)宿主机路径:容器路径  镜像名:版本号 /bin/bash

例如利用pytorch加载数据时,参数num_workers=8可以大大提高加载数据的速度:

train_loader = data.DataLoader(train_set, batch_size=args.batch_size,num_workers=4, shuffle=True)

8、启动

docker exec -it my_container /bin/bash
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值