Docker基础知识简介

1. 引言

上学的时候就常常听到大神在讨论Docker,当时觉得这是个很高级的工具,但工作后才真正意义上认真进行了研究,使用后一直有相见恨晚的感觉。

本篇希望可以将Docker的好处以及实用的指令整理下来,让有听过没用过但有兴趣想了解的朋友,有机会使用到这个好工具。

2. 镜像与容器

我个人一直将镜像档和容器的关系比喻为PPT中的模板以及一份具体的PPT材料。如下所示:
在这里插入图片描述
镜像(Image)可以视为一个只读的模板,基于这个模板我们可以建立不同的容器(Container)。在镜像中,可以包含一个完整的操作系统环境,可根据使用者的需求不同而带有不同的环境。在我们的本地的镜像可以当做我们拥有的开发环境模板,基于这些模板,我们可以根据任务的需求不同去开启适合的容器来执行相应的任务。

类比PPT中的例子,当某人做出了一个PPT模板时,希望可以分享出去让其他人使用,只需要将这个模板放到网络上,供其他人下载即可。拿到这个模板的人也可以大量的去制作投影片,去完成需要完成的任务。在docker中镜像与容器就像是这样的关系。

3. 下载镜像

在介绍完镜像和容器的关系后,我们使用以下命令来下载镜像到本地,如下:

sudo docker pull [Image Name]

例如:

sudo docker pull nvcr.io/nvidia/pytorch:22.04-py3

我们也可以使用以下的指令来知道目前比较热门的镜像,其中[Search Name]可以改成感兴趣的关键字。

sudo docker search [Search Name]

举例如下:
在这里插入图片描述

4. 列出所有镜像

我们可以使用sudo docker images指令,来查看所有的镜像。执行结果如下图所示,
在这里插入图片描述

可以看到字段包含:

  • REPOSITORY:代表这个镜像档来自哪个仓库
  • TAG:镜像的标记信息
  • IMAGE ID:镜像的唯一id值
  • CREATED:建立时间
  • VIRTUAL SIZE:镜像的大小

5. 删除镜像

可以使用以下指令来删除镜像,[Image Name]为需删除镜像的名字。

sudo docker rmi [Image Name]

6. 建立并执行容器

run这个指令有很多参数可以设定。可参考此官方文件

sudo docker run

7. 列出所有的容器

列出所有的容器的命令如下:

sudo docker ps -a

结果如下:
在这里插入图片描述

8. 退出容器

在容器内我们可以直接输入exit来离开容器,并回到原本的系统。

9. 进入容器

我们可以退出容器当然就可以再次进入容器,主有有两种方法可以进入容器,分别是execattach,两条指令中的[Container]为需要输入的容器的名称或是容器的ID。

sudo docker exec -it [Container] bash
sudo docker attach [Container]

而以上这两个指令有什么差别呢?差别就是如果我们使用exit离开容器时,当初用exec进入的容器并不会中止,但是用attach进入的容器,当我们离开容器后,这个容器就会被中止。示例如下:
在这里插入图片描述
在这里插入图片描述

10. 删除容器

我们也可以通过以下指令来删除不要的容器,[Container]同样是需要输入容器的名称或是容器的ID。

sudo docker rm [Container]

如下所示:
在这里插入图片描述

11. 启用与停止容器

启用与停止的指令也相当简单,分别是:

sudo docker start [Container]
sudo docker stop [Container]

12. 总结

本文对docker最基础的概念镜像和容器进行了详细的阐述,并对二者最常用的语法命令进行了归纳总结,并给出了相应的示例。

您学废了嘛?

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵卓不凡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值