docker入门指令


docker常见指令:

docker pull xxx 拉取某个镜像
docker run 运行某个镜像

# 列出本机正在运行的容器
$ docker container ls

# 列出本机所有容器,包括终止运行的容器
$ docker container ls --all

# 删除某个镜像
docker container rm [containerID]

#退出container
输入:exit

或者按键:
Ctrl + D

# 杀死container
docker kill [container_id]

# 已有未启动的container,重新进入
docker start [container_name]

# 使用“docker exec -it”命令进入container
docker exec -it [container_name] /bin/bash

# 常用的从image镜像创建container
docker run --cpus=8 -m 20g --shm-size 8g  -v /data:/data -v /home:/home  --gpus all --runtime=nvidia -p 16665:6665 -p 16666:6666 -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all  -it --name=[定义的container名] pytorch/pytorch:1.9.0-cuda11.1-cudnn8-devel /bin/bash

docker run --shm-size 8g  -v /data:/data -v /home:/home  --gpus all --runtime=nvidia -p 16665:6665 -p 16666:6666 -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all  -it --name=[定义的container名] pytorch/pytorch:1.9.0-cuda11.1-cudnn8-devel /bin/bash

docker run --shm-size 8g  -v /data:/data -v /home:/home  --gpus all --runtime=nvidia -p 16667:6667 -p 16668:6668 -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all  -it --name=[定义的container名] /bin/bash

# 镜像/容器 导入导出

docker save -o images.tar postgres:9.6 mongo:3.4
# 打包之后的images.tar包含postgres:9.6和mongo:3.4这两个镜像。

# 将打包后的镜像载入进来使用docker load,例如:
docker load -i images.tar
# 上述命令将会把postgres:9.6和mongo:3.4载入进来,如果本地镜像库已经存在这两个镜像,将会被覆盖。

# 总结一下docker save和docker export的区别:

docker export -o postgres-export.tar postgres
# docker export需要指定container,不能像docker save那样指定image。

docker import postgres-export.tar postgres:latest
# 从上面的命令可以看出,docker import将container导入后会成为一个image,而不是恢复为一个container。另外一点是,docker import可以指定IMAGE[:TAG],说明我们可以为镜像指定新名称。如果本地镜像库中已经存在同名的镜像,则原有镜像的名称将会被剥夺,赋给新的镜像。原有镜像将成为孤魂野鬼,只能通过IMAGE ID进行操作。
####
# docker export的应用场景主要用来制作基础镜像,比如你从一个ubuntu镜像启动一个容器,然后安装一些软件和进行一些设置后,使用docker export保存为一个基础镜像。然后,把这个镜像分发给其他人使用,比如作为基础的开发环境。
# docker save保存的是镜像(image),docker export保存的是容器(container);
# docker load用来载入镜像包,docker import用来载入容器包,但两者都会恢复为镜像;
# docker load不能对载入的镜像重命名,而docker import可以为镜像指定新名称。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值